Emoji2
नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा वर्शन |
---|---|---|---|---|
13 अगस्त, 2025 | 1.5.0 | 1.6.0-rc01 | - | - |
डिपेंडेंसी का एलान करना
Emoji2 पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { def emoji2_version = "1.5.0" implementation "androidx.emoji2:emoji2:$emoji2_version" implementation "androidx.emoji2:emoji2-views:$emoji2_version" implementation "androidx.emoji2:emoji2-views-helper:$emoji2_version" }
Kotlin
dependencies { val emoji2_version = "1.5.0" implementation("androidx.emoji2:emoji2:$emoji2_version") implementation("androidx.emoji2:emoji2-views:$emoji2_version") implementation("androidx.emoji2:emoji2-views-helper:$emoji2_version") }
डिपेंडेंसी के बारे में ज़्यादा जानकारी के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. कृपया नई लाइब्रेरी बनाने से पहले, इस लाइब्रेरी में मौजूद मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
Emoji2 Emojipicker वर्शन 1.0
वर्शन 1.5.0
4 सितंबर, 2024
androidx.emoji2:emoji2-*:1.5.0
रिलीज़ हो गया है. वर्शन 1.5.0 में ये कमिट शामिल हैं.
1.4.0 के बाद हुए ज़रूरी बदलाव
- इमोजी 15.1 और दोनों दिशाओं में काम करने वाले इमोजी सिलेक्टर यूज़र इंटरफ़ेस (यूआई) के लिए सहायता. दोनों दिशाओं में स्विच करने वाले बटन पर क्लिक करके, उपयोगकर्ता इमोजी के बाईं और दाईं ओर दिखने वाले वर्शन के बीच टॉगल कर सकते हैं.
- अलग-अलग रंग की स्किन वाले इमोजी चुनने की सुविधा. कपल्स वाले इमोजी को दबाकर रखने पर, बिना किसी इमोजी वाले सेक्शन के लिए, एक से ज़्यादा लोगों वाले इमोजी चुनने का विकल्प दिखता है. जब उपयोगकर्ता किसी इमोजी के बाएं आधे हिस्से पर टैप करता है, तो सबसे नीचे दाईं ओर मौजूद इमोजी की झलक अपडेट हो जाएगी. जब उपयोगकर्ता किसी इमोजी के दोनों हिस्सों को चुनता है, तो सबसे नीचे दाईं ओर मौजूद इमोजी की झलक में पूरा इमोजी दिखेगा. इसके बाद, उपयोगकर्ता उसे डाल सकता है.
वर्शन 1.0.0-alpha03
8 मार्च, 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha03
रिलीज़ हो गया है. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- ज़रूरत न होने वाले संसाधनों को हटाया गया और लाइब्रेरी का साइज़ ~0.3M तक कम किया गया.
वर्शन 1.0.0-alpha02
22 फ़रवरी, 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha02
रिलीज़ हो गया है. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- Java क्लाइंट के लिए नया एपीआई जोड़ा गया है, ताकि हाल ही के इमोजी उपलब्ध कराए जा सकें. (I39d10)
गड़बड़ियां ठीक की गईं
- इमोजी 15.0 (Ib4eb3) को सपोर्ट करने के लिए, इमोजी के संसाधनों को अपडेट किया गया है
- पॉप-अप विंडो से कोई इमोजी चुनने पर, एक जैसे सभी इमोजी को चुने गए नए इमोजी में अपडेट करें. हालांकि, हाल ही में इस्तेमाल किए गए इमोजी की लाइन में मौजूद इमोजी को अपडेट न करें. इमोजी पर क्लिक करने पर, उसे भी पढ़कर सुनाएं. (I892c6)
EmojiPickerView
दिखाने से पहले, emojicompat के लोड होने का इंतज़ार करें. (I29e03)
वर्शन 1.0.0-alpha01
25 जनवरी, 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha01
रिलीज़ हो गया है. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमोजी चुनने वाला टूल लॉन्च किया गया है. इससे Android OS OEM डिवाइसों और ऐप्लिकेशन पर, उपयोगकर्ताओं को नई इमोजी के साथ एक जैसा अनुभव मिलता है. इसमें इमोजी की नई सुविधा और इमोजी पिकर यूज़र इंटरफ़ेस (यूआई) उपलब्ध है. इसमें स्किन टोन के अलग-अलग वैरिएंट और इमोजी की सुविधा के साथ काम करने वाले ऐप्लिकेशन की जानकारी भी शामिल है.
एपीआई में हुए बदलाव
EmojiPickerView
क्लास लॉन्च की गई है. इसमें वर्टिकल स्क्रोल किए जा सकने वाले व्यू में अप-टू-डेट इमोजी मिलते हैं. साथ ही, इसमें क्लिक किए जा सकने वाले हॉरिज़ॉन्टल हेडर की सुविधा भी मिलती है.- इमोजी पिकर ग्रिड के कॉलम, एक्सएमएल एट्रिब्यूट
emojiGridColumns
या फ़ंक्शनsetEmojiGridColumns()
के ज़रिए सेट किए जा सकते हैं. - इमोजी पिकर की ग्रिड लाइनों को एक्सएमएल एट्रिब्यूट
emojiGridRows
या फ़ंक्शनsetEmojiGridRows()
की मदद से सेट किया जा सकता है. setOnEmojiPickedListener()
की मदद से, इमोजी चुनने वाले लिसनर को सेट किया जा सकता है. जब भी उपयोगकर्ता किसी इमोजी पर क्लिक करेगा, तब लिसनर को इसकी सूचना दी जाएगी.- इमोजी की हाल ही की सेवा देने वाली कंपनी को
setRecentEmojiProvider()
दिया जा सकता है. यह एक वैकल्पिक फ़ंक्शन है. अगर हाल ही में इस्तेमाल किए गए इमोजी की सुविधा देने वाली कंपनी सेट नहीं है, तो लाइब्रेरी, हाल ही में इस्तेमाल किए गए इमोजी की सुविधा देने वाली डिफ़ॉल्ट कंपनी का इस्तेमाल करेगी. डिफ़ॉल्ट ऐक्शन इस तरह से तय किया गया है: 1) चुने गए सभी इमोजी, शेयर की गई प्राथमिकताओं में हर ऐप्लिकेशन के हिसाब से सेव किए जाएंगे. 2) पिकर में, चुने गए इमोजी की ज़्यादा से ज़्यादा तीन लाइनें दिखेंगी. इनमें डुप्लीकेट इमोजी नहीं होंगे और इन्हें नए से पुराने के क्रम में दिखाया जाएगा. EmojiViewItem
क्लास जोड़ी गई है. इसमें दिखाए गए इमोजी और उसके इमोजी वैरिएंट शामिल हैं.RecentEmojiProvider
इंटरफ़ेस लॉन्च किया गया है. इसे लागू करके, हाल ही में इस्तेमाल किए गए इमोजी की सूची उपलब्ध कराई जा सकती है.recentEmojiProvider
, “हाल ही में इस्तेमाल किए गए” कैटगरी में इमोजी उपलब्ध कराने के लिए ज़िम्मेदार है.
वर्शन 1.6
वर्शन 1.6.0-rc01
13 अगस्त, 2025
androidx.emoji2:emoji2-*:1.6.0-rc01
रिलीज़ हो गया है. वर्शन 1.6.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमोजी 16.0 के साथ काम करता है. साथ ही, कॉन्टेंट के ब्यौरे में “इमोजी” सफ़िक्स जोड़ा गया है.
एपीआई में हुए बदलाव
- पुराने हो चुके
@RequiresApi(21)
एनोटेशन हटाना (Ic4792) - अब इस्तेमाल में नहीं हैं, ऐसे
@RequiresApi(21)
एनोटेशन हटाए जा रहे हैं (I9103b)
वर्शन 1.6.0-beta01
2 जुलाई, 2025
androidx.emoji2:emoji2-*:1.6.0-beta01
रिलीज़ हो गया है. वर्शन 1.6.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- Emoji 16.0 के अपडेट के लिए सहायता
- कॉन्टेंट के ब्यौरे में “इमोजी” सफ़िक्स जोड़ें, ताकि यह पक्का किया जा सके कि सभी इमोजी पिकर ऐप्लिकेशन में, ऐक्सेस करने से जुड़ी सुविधा एक जैसी हो.
वर्शन 1.6.0-alpha01
4 जून, 2025
androidx.emoji2:emoji2-*:1.6.0-alpha01
रिलीज़ हो गया है. वर्शन 1.6.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमोजी 16.0 के डेटा अपडेट (Ifc878)
- कॉन्टेंट के ब्यौरे में “इमोजी” सफ़िक्स जोड़ना
गड़बड़ियां ठीक की गईं
- यह लाइब्रेरी अब JSpecify nullness annotations का इस्तेमाल करती है. ये टाइप-यूज़ होते हैं. Kotlin डेवलपर को सही इस्तेमाल के लिए, कंपाइलर के इन आर्ग्युमेंट का इस्तेमाल करना चाहिए:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
(Id07e7, b/326456246)
संस्करण 1.5
वर्शन 1.5.0
4 सितंबर, 2024
androidx.emoji2:emoji2-*:1.5.0
रिलीज़ हो गया है. वर्शन 1.5.0 में ये कमिट शामिल हैं.
1.4.0 के बाद हुए ज़रूरी बदलाव
- इमोजी 15.1 और दोनों दिशाओं में काम करने वाले इमोजी सिलेक्टर यूज़र इंटरफ़ेस (यूआई) के लिए सहायता. दोनों दिशाओं में स्विच करने वाले बटन पर क्लिक करके, उपयोगकर्ता इमोजी के बाईं और दाईं ओर दिखने वाले वर्शन के बीच टॉगल कर सकते हैं.
- अलग-अलग रंग की स्किन वाले इमोजी चुनने की सुविधा. कपल्स वाले इमोजी को दबाकर रखने पर, बिना किसी इमोजी वाले सेक्शन के लिए, एक से ज़्यादा लोगों वाले इमोजी चुनने का विकल्प दिखता है. जब उपयोगकर्ता किसी इमोजी के बाएं आधे हिस्से पर टैप करता है, तो सबसे नीचे दाईं ओर मौजूद इमोजी की झलक अपडेट हो जाएगी. जब उपयोगकर्ता किसी इमोजी के दोनों हिस्सों को चुनता है, तो सबसे नीचे दाईं ओर मौजूद इमोजी की झलक में पूरा इमोजी दिखेगा. इसके बाद, उपयोगकर्ता उसे डाल सकता है.
वर्शन 1.5.0-rc01
21 अगस्त, 2024
androidx.emoji2:emoji2-*:1.5.0-rc01
रिलीज़ हो गया है. वर्शन 1.5.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमोजी 15.1 और दोनों दिशाओं में काम करने वाले इमोजी सिलेक्टर यूज़र इंटरफ़ेस (यूआई) के लिए सहायता. दोनों दिशाओं में स्विच करने वाले बटन पर क्लिक करके, उपयोगकर्ता इमोजी के बाईं और दाईं ओर दिखने वाले वर्शन के बीच टॉगल कर सकते हैं.
- अलग-अलग रंग की स्किन वाले इमोजी चुनने की सुविधा. कपल्स वाले इमोजी को दबाकर रखने पर, बिना किसी इमोजी वाले सेक्शन के लिए, एक से ज़्यादा लोगों वाले इमोजी चुनने का विकल्प दिखता है. जब उपयोगकर्ता किसी इमोजी के बाएं आधे हिस्से पर टैप करता है, तो सबसे नीचे दाईं ओर मौजूद इमोजी की झलक अपडेट हो जाएगी. जब उपयोगकर्ता किसी इमोजी के दोनों हिस्सों को चुनता है, तो झलक में पूरा इमोजी दिखेगा. इसके बाद, उपयोगकर्ता उसे डाल सकता है.
गड़बड़ियां ठीक की गईं
- नए प्लैटफ़ॉर्म एपीआई को ऐक्सेस करने के लिए, मैन्युअल तरीके से आउटलाइन बनाने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि AGP 7.3 या इसके बाद के वर्शन (जैसे, R8 का वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर, एपीआई मॉडलिंग के ज़रिए यह काम अपने-आप हो जाता है. साथ ही, AGP 8.1 या इसके बाद के वर्शन (जैसे, D8 का वर्शन 8.1) का इस्तेमाल करने पर, सभी बिल्ड के लिए यह काम अपने-आप हो जाता है. AGP का इस्तेमाल न करने वाले क्लाइंट को, D8 के 8.1 या उसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (If6b4c, b/345472586)
EmojiPickerView
के टैब का चुनाव और इंडिकेटर अपडेट, एक क्लिक पीछे है. (146b02, b/288261054)EmojiPickerView
के टैब चुनने और इंडिकेटर दिखाने की सुविधा काम नहीं कर रही है. (5e1f14, b/273883688)
वर्शन 1.5.0-beta01
10 जुलाई, 2024
androidx.emoji2:emoji2-*:1.5.0-beta01
रिलीज़ हो गया है. वर्शन 1.5.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमोजी 15.1 और दोनों दिशाओं में इमोजी चुनने की सुविधा वाले यूज़र इंटरफ़ेस (यूआई) के लिए सहायता.
- स्किन टोन चुनने की सुविधा को फिर से डिज़ाइन करने की सुविधा.
गड़बड़ियां ठीक की गईं
EmojiPickerView
के टैब का चुनाव और इंडिकेटर अपडेट, एक क्लिक पीछे है. (146b02, b/288261054)EmojiPickerView
के टैब चुनने और इंडिकेटर दिखाने की सुविधा काम नहीं कर रही है. (5e1f14, b/273883688)
वर्शन 1.5.0-alpha01
13 दिसंबर, 2023
androidx.emoji2:emoji2-*:1.5.0-alpha01
रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
emoji2-bundled
में, Emoji 15.1 को सपोर्ट करने के लिए अपडेट किया गया इमोजी फ़ॉन्ट शामिल है.
एपीआई में हुए बदलाव
InitCallback
के लिए, कॉलबैक थ्रेड को कंट्रोल करने वाले एक्ज़ीक्यूटर जोड़ें. (I32b67)BundledEmojiCompatConfig
अब थ्रेड लोड करने को कंट्रोल करने के लिए, एक्ज़ीक्यूटर का इस्तेमाल करता है. (I00e81)
वर्शन 1.4
वर्शन 1.4.0
9 अगस्त, 2023
androidx.emoji2:emoji2-*:1.4.0
रिलीज़ हो गया है. वर्शन 1.4.0 में ये कमिट शामिल हैं.
1.3.0 के बाद हुए अहम बदलाव
- इमोजी पिकर लाइब्रेरी लॉन्च की गई. ज़्यादा जानकारी के लिए, डेवलपर दस्तावेज़ देखें.
वर्शन 1.4.0-rc01
26 जुलाई, 2023
androidx.emoji2:emoji2-*:1.4.0-rc01
रिलीज़ हो गया है. वर्शन 1.4.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
registerSource
सूची की सुविधा लॉन्च की गई (Iae92f)- एपीआई काउंसिल से मिला सुझाव:
TransitionManager.seekTo()
का नाम बदलकरcreateSeekController()
कर दिया गया है. कृपयाTransitionManager.seekTo()
कोTransitionManager.createSeekController()
में जोड़ने के बारे में पिछली टिप्पणी में बदलाव करें. (Idbeb1) ExerciseRouteResult
को जोड़ा गया है, जोData
,NoData
, औरConsentRequiredStates
के लिए सुपरक्लास नहीं है.ExerciseRoute
को एक स्टैंडअलोन क्लास के तौर पर जोड़ा गया है. यह क्लास, रास्ते की जगह की जानकारी का डेटा सेव करती है. (I22eed)- हमने
PagerLayoutInfo
को लॉन्च किया है. इसमें Pager में मेज़रमेंट पास होने के बाद इकट्ठा की गई जानकारी शामिल है. साथ ही, Pager में PageInfo को भी शामिल किया गया है. यह मेज़र किए गए किसी पेज के बारे में जानकारी देता है. (Iad003, b/283098900)
गड़बड़ियां ठीक की गईं
- हमने Material3 डिज़ाइन के हिसाब से,
Button
,IconButton
, औरTextButton
के रंगों को अपडेट कर दिया है.Modifier.semantics
का इस्तेमाल करके,Button
,IconButton
, औरTextButton
के लिए सिमेंटिक भूमिका को अब बदला जा सकता है. (Ib2495) EmojiPickerView
टैब के चुने जाने और इंडिकेटर के अपडेट होने से जुड़ी समस्या ठीक की गई. (I4db04)FileNotFoundException
इमोजी पिकर दिखाने पर (I353e4)EmojiPickerView
का इस्तेमाल करते समयWindowManager.BadTokenException
को कैप्चर करना (I0a144)
वर्शन 1.4.0-beta05
7 जून, 2023
androidx.emoji2:emoji2-*:1.4.0-beta05
रिलीज़ हो गया है. वर्शन 1.4.0-beta05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- वर्शन 1.3 में मौजूद उस गड़बड़ी को ठीक कर दिया गया है जिसकी वजह से
MetricsAffectingSpans
जैसे किRelativeSizeSpan
दो बार लागू हो जाता था. एक बार टेक्स्ट लेआउट के दौरान और दूसरी बारEmojiSpan.draw
के अंदर. नतीजे में टेक्स्ट का साइज़ गलत तरीके से दिखाया गया था. अगर स्पैन से टेक्स्ट के साइज़ के किसी भी पैरामीटर में बदलाव किया गया था, तो यह दिखता है. (b/283208650)
वर्शन 1.4.0-beta04
24 मई, 2023
androidx.emoji2:emoji2-*:1.4.0-beta04
रिलीज़ हो गया है. वर्शन 1.4.0-beta04 में ये कमिट शामिल हैं.
इस रिलीज़ में, 1.0 वर्शन से मौजूद एक गड़बड़ी को ठीक किया गया है. इस गड़बड़ी में, फ़ॉन्ट लोड होने के बाद इमोजी स्पैन को अपडेट करने की कोशिश करने पर, नॉन-मेन हैंडलर वाले व्यू एक अपवाद दिखाएंगे. अगर आपको इस गड़बड़ी की वजह से समस्या आ रही है, तो कृपया इस वर्शन या इसके बाद के वर्शन पर अपग्रेड करें.
गड़बड़ियां ठीक की गईं
EmojiCompat
init कॉलबैक अब हर व्यू से हैंडलर का इस्तेमाल करेंगे. साथ ही, मुख्य थ्रेड पर मौजूद नहीं होने वाले व्यू का पालन करेंगे. (Iccbcf)
वर्शन 1.4.0-beta03
10 मई, 2023
androidx.emoji2:emoji2-*:1.4.0-beta03
रिलीज़ हो गया है. वर्शन 1.4.0-beta03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इमोजी पिकर के नेस्ट किए गए पॉप-अप व्यू के क्रैश होने की समस्या ठीक की गई. (0acc8e)
EmojiCompat getEmojiStart/getEmojiEnd
में शुरुआती गड़बड़ियां ट्रिगर करें. (26177f)
वर्शन 1.4.0-beta02
19 अप्रैल, 2023
androidx.emoji2:emoji2-*:1.4.0-beta02
रिलीज़ हो गया है. वर्शन 1.4.0-beta02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- लिंट की बेसलाइन फ़ाइलों को अपडेट करें (Iaa212)
वर्शन 1.4.0-beta01
5 अप्रैल, 2023
androidx.emoji2:emoji2-*:1.4.0-beta01
रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
androidx.emoji2:emoji2-emojipicker
इमोजी पिकर, यूज़र इंटरफ़ेस (यूआई) से जुड़ा एक समाधान है. यह आधुनिक लुक और फ़ील देता है. इसमें अप-टू-डेट इमोजी होते हैं और इसे इस्तेमाल करना आसान होता है. उपयोगकर्ता, इमोजी और उनके वैरिएंट ब्राउज़ करके चुन सकते हैं. इसके अलावा, वे हाल ही में इस्तेमाल किए गए इमोजी में से भी कोई इमोजी चुन सकते हैं. इस लाइब्रेरी की मदद से, अलग-अलग ओईएम के ऐप्लिकेशन, अपने उपयोगकर्ताओं को एक जैसा और बेहतर इमोजी अनुभव दे सकते हैं. इसके लिए, डेवलपर को इमोजी चुनने वाले टूल को शुरू से बनाने और उसे मैनेज करने की ज़रूरत नहीं होती.
अप-टू-डेट इमोजी
हर साल नए इमोजी रिलीज़ किए जाते हैं. हम उन्हें इमोजी पिकर में शामिल करेंगे. हम यह पक्का करने के लिए कि इमोजी पुराने वर्शन के साथ काम करते हैं, इमोजी रेंडर करने की क्षमता की सटीक जांच करते हैं. इससे टोफ़ू को हटाया जा सकता है. इससे यह पक्का किया जा सकेगा कि लाइब्रेरी, Android के अलग-अलग वर्शन और डिवाइसों के साथ काम करती है.
स्टिक किए गए वैरिएंट
किसी इमोजी को दबाकर रखने पर, आपको अलग-अलग वैरिएंट का मेन्यू दिखेगा. जैसे, अलग-अलग जेंडर या त्वचा के रंग. चुने गए वैरिएंट को इमोजी पिकर में सेव कर दिया जाएगा. साथ ही, मुख्य पैनल में आखिरी बार चुने गए वैरिएंट का इस्तेमाल किया जाएगा. इस सुविधा की मदद से, उपयोगकर्ता सिर्फ़ एक टैप करके अपनी पसंद के इमोजी के अलग-अलग वर्शन भेज सकते हैं.
हाल ही में इस्तेमाल किए गए इमोजी
RecentEmojiProvider
, “हाल ही में इस्तेमाल किए गए” कैटगरी में इमोजी उपलब्ध कराने के लिए ज़िम्मेदार है. लाइब्रेरी में, हाल ही में इस्तेमाल किए गए इमोजी का डिफ़ॉल्ट प्रोवाइडर होता है. यह सबसे सामान्य इस्तेमाल के उदाहरण को पूरा करता है:
- चुने गए सभी इमोजी, शेयर की गई प्राथमिकताओं में हर ऐप्लिकेशन के हिसाब से सेव किए जाते हैं.
- इमोजी पिकर में, चुने गए इमोजी की ज़्यादा से ज़्यादा तीन लाइनें दिखती हैं. इनमें से डुप्लीकेट इमोजी हटा दिए जाते हैं और इन्हें नए से पुराने के क्रम में दिखाया जाता है.
अगर डिफ़ॉल्ट व्यवहार आपके लिए सही है, तो आपको setRecentEmojiProvider()
तरीका सेट करने की ज़रूरत नहीं है.
EmojiCompat का इस्तेमाल करना
अगर ऐप्लिकेशन में EmojiCompat
इंस्टेंस है, तो इसका इस्तेमाल इमोजी पिकर में ज़्यादा से ज़्यादा इमोजी रेंडर करने के लिए किया जाएगा. EmojiCompat
बंद होने पर भी, इमोजी पिकर ठीक से काम करेगा.
लाइब्रेरी इस्तेमाल करने का तरीका
लाइब्रेरी का इस्तेमाल करने के लिए, ऐप्लिकेशन डेवलपर को यह काम करना चाहिए
build.gradle
मेंandroidx.emoji2:emojipicker:$version
इंपोर्ट करें.dependencies { implementation "androidx.emoji2:emojipicker:$version" }
इमोजी पिकर व्यू को बड़ा करें. साथ ही, हर इमोजी सेल के साइज़ के हिसाब से,
emojiGridRows
औरemojiGridColumns
को सेट करें- इन्हें सेट न करने पर, डिफ़ॉल्ट रूप से 9
emojiGridColumns
दिखेंगे. पंक्तियों की गिनती, पैरंट व्यू की ऊंचाई औरemojiGridColumns
के आधार पर की जाएगी - एक्सएमएल में नीचे की ओर स्क्रोल करने पर, ज़्यादा इमोजी दिखते हैं. यह दिखाने के लिए,
emojiGridRows
को फ़्लोट के तौर पर सेट किया जा सकता है
<androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" app:emojiGridColumns="9" />
- इन्हें सेट न करने पर, डिफ़ॉल्ट रूप से 9
कोड में
val emojiPickerView = EmojiPickerView(context).apply {
emojiGridColumns = 15
layoutParams = ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
)
}
findViewById<ViewGroup>(R.id.emoji_picker_layout).addView(emojiPickerView)
अगर आपको चुने गए इमोजी को EditText में जोड़ना है, तो
setOnEmojiPickedListener()
का इस्तेमाल करेंemojiPickerView.setOnEmojiPickedListener { findViewById<EditText>(R.id.edit_text).append(it.emoji) }
ज़रूरत पड़ने पर
RecentEmojiProvider
सेट करें. इसे लागू करने का उदाहरण देखने के लिए, सैंपल ऐप्लिकेशन देखें.स्टाइल को पसंद के मुताबिक बनाएं. हालांकि, यह ज़रूरी नहीं है. थीम के सामान्य एट्रिब्यूट को बदलने के लिए, अपनी स्टाइल बनाएं और उसे
EmojiPickerView
पर लागू करें. उदाहरण के लिए,colorControlNormal
को बदलने पर, कैटगरी के आइकॉन का रंग बदल जाएगा.<style name="CustomStyle" > <item name="colorControlNormal">#FFC0CB</item> </style> <androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" android:theme="@style/CustomStyle" app:emojiGridColumns="9" />
लागू करने का उदाहरण देखने के लिए, सैंपल ऐप्लिकेशन देखें.
एपीआई के बारे में पूरी जानकारी यहां देखी जा सकती है.
सैंपल ऐप्लिकेशन
इस सैंपल ऐप्लिकेशन में, इस्तेमाल के बुनियादी उदाहरणों के साथ-साथ ये अतिरिक्त उदाहरण भी दिखाए गए हैं:
emojiGridRows
औरemojiGridColumns
को रीसेट करने की वजह से, व्यू को फिर से लेआउट किया गया.- इमोजी उपलब्ध कराने वाले हाल ही के प्लैटफ़ॉर्म को बदलकर, फ़्रीक्वेंसी के हिसाब से क्रम में लगाया जाता है.
- स्टाइल को पसंद के मुताबिक बनाना.
एपीआई में हुए बदलाव
इमोजी पिकर लाइब्रेरी को इन नए एपीआई के साथ अपडेट किया गया है:
EmojiPickerView
क्लास, जो वर्टिकल तौर पर स्क्रोल किए जा सकने वाले व्यू में अप-टू-डेट इमोजी उपलब्ध कराती है. इसमें क्लिक किए जा सकने वाला हॉरिज़ॉन्टल हेडर होता है.- एक्सएमएल एट्रिब्यूट
emojiGridColumns
औरemojiGridRows
याsetEmojiGridColumns()
औरsetEmojiGridRows()
तरीकों का इस्तेमाल करके, इमोजी पिकर ग्रिड में कॉलम और लाइनों की संख्या सेट करने की सुविधा. setOnEmojiPickedListener()
तरीके से, इमोजी चुनने वाले लिसनर को सेट करने की सुविधा. जब भी उपयोगकर्ता किसी इमोजी पर क्लिक करेगा, तब लिसनर को इसकी सूचना मिलेगी.setRecentEmojiProvider()
तरीके का इस्तेमाल करके, हाल ही में इमोजी उपलब्ध कराने वाली कंपनी की जानकारी देने की सुविधा. यह एक वैकल्पिक फ़ंक्शन है. अगर हाल ही में इस्तेमाल किए गए इमोजी की सुविधा देने वाली कंपनी सेट नहीं की गई है, तो लाइब्रेरी, हाल ही में इस्तेमाल किए गए इमोजी की सुविधा देने वाली डिफ़ॉल्ट कंपनी का इस्तेमाल करेगी. डिफ़ॉल्ट तरीके को इस तरह से परिभाषित किया गया है:- चुने गए सभी इमोजी, शेयर की गई प्राथमिकताओं में ऐप्लिकेशन के हिसाब से सेव किए जाएंगे.
- पिकर में, चुने गए इमोजी की ज़्यादा से ज़्यादा तीन पंक्तियां दिखेंगी. इनमें डुप्लीकेट इमोजी नहीं होंगे और इन्हें नए से पुराने के क्रम में दिखाया जाएगा.
EmojiViewItem
क्लास, जिसमें दिखाया गया इमोजी और उसके इमोजी वैरिएंट शामिल होते हैं.RecentEmojiProvider
इंटरफ़ेस, जिसका इस्तेमाल हाल ही में इस्तेमाल की गई इमोजी की सूची दिखाने के लिए किया जा सकता है.recentEmojiProvider
, “हाल ही में इस्तेमाल किए गए” कैटगरी में इमोजी उपलब्ध कराने के लिए ज़िम्मेदार है.RecentEmojiAsyncProvider
इंटरफ़ेस, जिसका इस्तेमाल हाल ही में इस्तेमाल की गई इमोजी की सूची दिखाने के लिए किया जा सकता है.RecentEmojiAsyncProvider
, “हाल ही में इस्तेमाल किए गए” कैटगरी में इमोजी उपलब्ध कराने के लिए ज़िम्मेदार है. यह इंटरफ़ेसRecentEmojiProvider
के बराबर है. इससे क्लाइंट,getRecentEmojiListAsync()
तरीके को बदलकर हाल ही में इस्तेमाल किए गए इमोजी उपलब्ध करा सकते हैं.RecentEmojiProviderAdapter
क्लास, जोRecentEmojiAsyncProvider
के लिए अडैप्टर है औरRecentEmojiProvider
को लागू करता है.
वर्शन 1.4.0-alpha01
22 मार्च, 2023
androidx.emoji2:emoji2-*:1.4.0-alpha01
रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- टेस्ट ठीक करना, फ़्लेकी टेस्ट बंद करना, और क्लीन अप करना.
वर्शन 1.3
वर्शन 1.3.0
22 मार्च, 2023
androidx.emoji2:emoji2-*:1.3.0
रिलीज़ हो गया है. वर्शन 1.3.0 में ये कमिट शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
- इस रिलीज़ के बाद, Compose Foundation
1.4.0
और इसके बाद के वर्शन में, emoji2 इंटिग्रेशन की सुविधा चालू की जा सकती है. - यह
EmojiSpans
को पसंद के मुताबिक बनाए गए ड्राइंग कोड से बदलने की सुविधा भी देता है. साथ ही, Android पर तय किए गए इमोजी को हटाने की सुविधा भी देता है.
वर्शन 1.3.0-rc01
8 मार्च, 2023
androidx.emoji2:emoji2-*:1.3.0-rc01
रिलीज़ हो गया है. वर्शन 1.3.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
- यह वर्शन, emoji2 कंपोज़ इंटिग्रेशन के साथ काम करता है.
एपीआई में हुए बदलाव
- कस्टम ड्रॉइंग कोड के लिए स्पैन बदलें.
- सिस्टम में शामिल नहीं किए गए आइटम के बारे में क्वेरी करना.
गड़बड़ियां ठीक की गईं
- साथ ही, हमने उस गड़बड़ी को ठीक किया है जिसकी वजह से, बैकग्राउंड स्पैन को
EmojiSopans
के पीछे सही तरीके से लागू नहीं किया जा रहा था.
वर्शन 1.3.0-beta03
23 फ़रवरी, 2023
androidx.emoji2:emoji2-bundled:1.3.0-beta03
, androidx.emoji2:emoji2-views:1.3.0-beta03
, और androidx.emoji2:emoji2-views-helper:1.3.0-beta03
रिलीज़ किए गए हैं.
22 फ़रवरी, 2023
androidx.emoji2:emoji2:1.3.0-beta03
रिलीज़ हो गया है. वर्शन 1.3.0-beta03 में ये कमिट शामिल हैं.
नई सुविधाएं
- कोई परिवर्तन नहीं. यह रिलीज़, कंपोज़ इंटिग्रेशन के लिए तैयार की गई है.
वर्शन 1.3.0-beta02
8 फ़रवरी, 2023
androidx.emoji2:emoji2-*:1.3.0-beta02
रिलीज़ हो गया है. वर्शन 1.3.0-beta02 में ये कमिट शामिल हैं.
नई सुविधाएं
- यह रिलीज़, कंपोज़ इंटिग्रेशन के लिए है.
वर्शन 1.3.0-beta01
25 जनवरी, 2023
androidx.emoji2:emoji2-*:1.3.0-beta01
रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- सिस्टम में शामिल नहीं किए गए आइटम के बारे में क्वेरी करना.
- कस्टम ड्रॉइंग कोड के लिए स्पैन बदलना.
- साथ ही, हमने उस गड़बड़ी को ठीक किया है जिसकी वजह से, बैकग्राउंड स्पैन को
EmojiSopans
के पीछे सही तरीके से लागू नहीं किया जा रहा था. - इस रिलीज़ में, Compose में
EmojiCompat
की सुविधा के लिए ज़रूरी एपीआई जोड़े गए हैं. आने वाले समय में, इमोजी कंपैट के लिए कंपोज़ करने की सुविधा उपलब्ध होगी.
वर्शन 1.3.0-alpha01
11 जनवरी, 2023
androidx.emoji2:emoji2-*:1.3.0-alpha01
रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये कमिट शामिल हैं.
कम लेवल के इंटरैक्शन के लिए नए एपीआई
- सिस्टम से बाहर रखे गए आइटम के बारे में क्वेरी करना
- कस्टम ड्रॉइंग कोड के लिए स्पैन बदलना
- साथ ही, हमने उस गड़बड़ी को ठीक किया है जिसकी वजह से, बैकग्राउंड स्पैन को
EmojiSopans
के पीछे सही तरीके से लागू नहीं किया जा रहा था. - इस रिलीज़ में, Compose में
EmojiCompat
की सुविधा के लिए ज़रूरी एपीआई जोड़े गए हैं. आने वाले समय में, इमोजी कंपैट के लिए कंपोज़ करने की सुविधा उपलब्ध होगी.
एपीआई में हुए बदलाव
TypefaceEmojiRasterizer
में, सिस्टम से बाहर रखे गए आइटम के बारे में क्वेरी करने की सुविधा जोड़ी गई. (I5653e)- डिफ़ॉल्ट
EmojiSpan
के व्यवहार को कस्टम ड्राइंग और साइज़िंग कोड से बदलने के लिए, नया एपीआईEmojiCompat.SpanFactory
जोड़ा गया. (Ib69d9) - Compose में
EmojiCompat
जोड़ा गया (I96f37, b/139326806)
गड़बड़ियां ठीक की गईं
- Emoji2 अब
BackgroundSpan
से बैकग्राउंड को सही तरीके से ड्रॉ करेगा. (Ide6a8, b/230525134) - 1.5.0-beta01 के लिए AppCompat API को फ़ाइनल करें (I2a43d, b/236866227)
वर्शन 1.2
वर्शन 1.2.0
10 अगस्त, 2022
androidx.emoji2:emoji2-*:1.2.0
रिलीज़ हो गया है. वर्शन 1.2.0 में ये कमिट शामिल हैं.
1.1.0 के बाद हुए अहम बदलाव
यह बग ठीक करने के लिए जारी किया गया वर्शन है. 1.1.0 के बाद से, कोई नई सुविधा या एपीआई नहीं जोड़ा गया है.
हालांकि, PrecomputedText
या TextView.setText(char[])
का इस्तेमाल करने वाले ऐप्लिकेशन को इस वर्शन पर अपग्रेड करने को प्राथमिकता देनी चाहिए.
इन गड़बड़ियों को ठीक किया गया है:
Emoji2
, पहले से तय किए गए टेक्स्ट लेआउट को हटाकरPrecomputedText
में इमोजी जोड़ देगा. (I47d06, b/211231958)- Android P से
EditText
में एडिटर के क्रैश होने की समस्या को ठीक करने के लिए, बैकपोर्ट करें.EditText
को emoji2 का इस्तेमाल करने के लिए कॉन्फ़िगर किया गया है. (Ifd709, b/216891011) - emoji2 के फ़ॉन्ट लोड होने और
TextView.setText(char[])
का इस्तेमाल करने पर क्रैश होने की समस्या ठीक की गई. (Id511e, b/206859724)
वर्शन 1.2.0-rc01
27 जुलाई, 2022
androidx.emoji2:emoji2-*:1.2.0-rc01
रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
- पिछले बीटा वर्शन के बाद से कोई बदलाव नहीं हुआ है.
वर्शन 1.2.0-beta01
13 जुलाई, 2022
androidx.emoji2:emoji2-*:1.2.0-beta01
रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- पिछले वर्शन की तुलना में कोई बदलाव नहीं किया गया है. यह रिलीज़, AppCompat रिलीज़ के साथ काम करने के लिए है.
वर्शन 1.2.0-alpha04
20 अप्रैल, 2022
androidx.emoji2:emoji2-*:1.2.0-alpha04
रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- इस रिलीज़ में कोई बदलाव नहीं किया गया है.
वर्शन 1.2.0-alpha03
6 अप्रैल, 2022
androidx.emoji2:emoji2-*:1.2.0-alpha03
रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये कमिट शामिल हैं.
नई सुविधाएं
- पिछले वर्शन में कोई बदलाव नहीं किया गया है. यह रिलीज़, appcompat रिलीज़ के साथ काम करने के लिए है.
वर्शन 1.2.0-alpha02
23 मार्च, 2022
androidx.emoji2:emoji2-*:1.2.0-alpha02
रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Emoji2, पहले से तय किए गए टेक्स्ट लेआउट को हटाकर
PrecomputedText
में इमोजी जोड़ देगा. (I47d06, b/211231958) - Android P से, क्रैश होने वाले एडिटर को ठीक करने के लिए, EditText में बैकपोर्ट किया गया है. इसे emoji2 का इस्तेमाल करने के लिए कॉन्फ़िगर किया गया है. (Ifd709, b/216891011)
- emoji2 के फ़ॉन्ट लोड होने और
TextView.setText(char[])
का इस्तेमाल करने पर, क्रैश होने की समस्या ठीक की गई. (Id511e, b/206859724)
वर्शन 1.2.0-alpha01
23 फ़रवरी, 2022
androidx.emoji2:emoji2-*:1.2.0-alpha01
रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये कमिट शामिल हैं.
1.1.0 के बाद से कोई बदलाव नहीं किया गया है.
1.1
वर्शन 1.1.0
23 फ़रवरी, 2022
androidx.emoji2:emoji2-*:1.1.0
रिलीज़ हो गया है. वर्शन 1.1.0 में ये कमिट शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
- emoji2-bundled में इमोजी 14 फ़ॉन्ट शामिल है
- नया
getEmojiMatch
API, कीबोर्ड के लिए सटीक जानकारी देता है. इससे यह तय किया जा सकता है कि सिस्टम फ़ॉन्ट के पीछे मौजूद, इमोजी के साथ काम करने वाले फ़ॉन्ट के साथ इमोजी कैसे दिखेगा NumberKeyListener
के लिए बग ठीक किया गया है. इससे, अंक डालने पर वर्णों को सही तरीके से फ़िल्टर किया जा सकेगा.
वर्शन 1.1.0-rc01
9 फ़रवरी, 2022
androidx.emoji2:emoji2-*:1.1.0-rc01
रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
बीटा वर्शन में कोई बदलाव नहीं किया गया है.
emoji2 1.0.0 की तुलना में नई सुविधाएं:
emoji2-bundled
में इमोजी 14 फ़ॉन्ट शामिल है- नया
getEmojiMatch
API, कीबोर्ड के लिए सटीक जानकारी देता है. इससे यह तय किया जा सकता है कि सिस्टम फ़ॉन्ट के पीछे मौजूद, इमोजी के साथ काम करने वाले फ़ॉन्ट के साथ इमोजी कैसे दिखेगा NumberKeyListener
के लिए बग ठीक किया गया है. इससे, अंक डालने पर वर्णों को सही तरीके से फ़िल्टर किया जा सकेगा
वर्शन 1.1.0-beta01
26 जनवरी, 2022
androidx.emoji2:emoji2-*:1.1.0-beta01
रिलीज़ हो गया है. वर्शन 1.1.0-beta01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- androidx-emoji2 का beta01 वर्शन रिलीज़ किया गया है. alpha01 (Ic61d9) से कोई बदलाव नहीं किया गया है
वर्शन 1.1.0-alpha01
15 दिसंबर, 2021
androidx.emoji2:emoji2-*:1.1.0-alpha01
रिलीज़ हो गया है. वर्शन 1.1.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
emoji2-bundled
में इमोजी 14 फ़ॉन्ट शामिल है- नया
getEmojiMatch
API, कीबोर्ड के लिए सटीक जानकारी देता है. इससे यह तय किया जा सकता है कि सिस्टम फ़ॉन्ट के पीछे मौजूद, इमोजी के साथ काम करने वाले फ़ॉन्ट के साथ इमोजी कैसे दिखेगा NumberKeyListener
के लिए बग ठीक किया गया है. इससे, अंक डालने पर वर्णों को सही तरीके से फ़िल्टर किया जा सकेगा
एपीआई में हुए बदलाव
- नया एपीआई
getEmojiMatch
जोड़ें, ताकि कीबोर्ड, emojicompat में इमोजी मैच करने के तरीके को ज़्यादा सटीक तरीके से देख सकें. hasEmojiGlyph
को बंद कर दिया गया है, क्योंकि प्लैटफ़ॉर्म के इमोजी फ़ॉन्ट से पुराने फ़ॉन्ट की जांच करने पर, इसकी बूलियन वैल्यू गलत होती है.getEmojiMatch
से बदलें. (Ie693d)
गड़बड़ियां ठीक की गईं
- Emoji2,
NumberKeyListener
के इंस्टेंस को रैप नहीं करेगा. इससेTextView
को स्थान-भाषा कॉन्फ़िगर करने की अनुमति मिलेगी. - AppCompat,
setKeyListener
को पास किए गएNumberKeyListener
के इंस्टेंस को रैप नहीं करेगा. इससेTextView
,NumberKeyListeners
पर स्थान-भाषा को सही तरीके से कॉन्फ़िगर कर पाएगा. (Ibf113, b/207119921)
1.0
वर्शन 1.0.1
15 दिसंबर, 2021
androidx.emoji2:emoji2-*:1.0.1
रिलीज़ हो गया है. वर्शन 1.0.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
Emoji2
,NumberKeyListener
के इंस्टेंस को रैप नहीं करेगा. इससेTextView
को स्थान-भाषा कॉन्फ़िगर करने की अनुमति मिलेगी.- AppCompat,
setKeyListener
को पास किए गएNumberKeyListener
के इंस्टेंस को रैप नहीं करेगा. इससेTextView
,NumberKeyListeners
पर स्थान-भाषा को सही तरीके से कॉन्फ़िगर कर पाएगा. (Ibf113, b/207119921)
वर्शन 1.0.0
17 नवंबर, 2021
androidx.emoji2:emoji2-*:1.0.0
रिलीज़ हो गया है. वर्शन 1.0.0 में ये कमिट शामिल हैं.
1.0.0 वर्शन की मुख्य सुविधाएं
androidx.emoji2, androidx.emoji की जगह लेता है. इसमें ये अतिरिक्त सुविधाएं मिलती हैं:
- androidx.emoji के मुकाबले APK का साइज़ कम होना
- अपने-आप कॉन्फ़िगर होने की सुविधा
- इसे appcompat 1.4 में डिपेंडेंसी के तौर पर जोड़ा गया है
androidx.emoji2 के बारे में ज़्यादा जानने के लिए, ऐप्लिकेशन को नए इमोजी के मुताबिक बनाना लेख पढ़ें. इसके अलावा, Android Dev Summit में हुई हमारी बातचीत Displaying ALL the emojis in your app Android Dev देखें.
वर्शन 1.0.0-rc01
27 अक्टूबर, 2021
androidx.emoji2:emoji2-*:1.0.0-rc01
रिलीज़ हो गया है. वर्शन 1.0.0-rc01 में ये कमिट शामिल हैं.
- beta02 के बाद से कोई बदलाव नहीं किया गया है.
Emoji2 का वर्शन 1.0.0-beta01
15 सितंबर, 2021
androidx.emoji2:emoji2-*:1.0.0-beta01
रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
setLoadingExecutor
कोFontRequestEmojiCompatConfig
में जोड़ा गया है. यहsetHandler
के पिछले एपीआई की जगह लेता है. इस एपीआई की मदद से, ऐप्लिकेशनFontRequestEmojiCompatConfig
को कॉन्फ़िगर कर सकते हैं, ताकि वे किसी भी बैकग्राउंड एक्ज़ीक्यूटर का इस्तेमाल कर सकें.यह बदलाव
androidx.emoji:emoji
से अलग है. इसलिए, माइग्रेशन में मदद करने के लिए,setHandler
को नो-ऑप डिप्लिकेट किए गए एपीआई के तौर पर बनाए रखा गया है. (I6cd48)EmojiCompat, Android 11 पर
EditorInfo.extras
को सही तरीके से सेट करता है- IME का इस्तेमाल करने वाले ऐसे कस्टम विजेट जो EditText के सबक्लास नहीं हैं, वे IME को यह बताने के लिए
EmojiCompat.updateEditorInfo
को कॉल कर सकते हैं कि वे EmojiCompat प्रोसेसिंग के साथ काम करते हैं. (I1ea9b)
- IME का इस्तेमाल करने वाले ऐसे कस्टम विजेट जो EditText के सबक्लास नहीं हैं, वे IME को यह बताने के लिए
गड़बड़ियां ठीक की गईं
- एपीआई 19 और 28 पर इमोजी फ़ॉन्ट उपलब्ध कराने वाली कंपनी को सही तरीके से ढूंढने के लिए,
DefaultEmojiCompatConfig
ठीक करें. इस अपडेट में, emoji2 1.0.0-alpha01 में हुई गड़बड़ी को ठीक किया गया है. (Ib33d8, b/197906329)
वर्शन 1.0.0-alpha03
30 जून, 2021
androidx.emoji2:emoji2-*:1.0.0-alpha03
रिलीज़ हो गया है. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
नई सुविधाएं
इस रिलीज़ में गड़बड़ियां ठीक की गई हैं और ऐप्लिकेशन की स्थिरता में सुधार किया गया है.
- EmojiEditTextHelper अब
null
को KeyListener के तौर पर पास करने की अनुमति देता है. इससे प्लैटफ़ॉर्म को यह अनुमति मिलती है कि वह इमोजी के साथ काम करने वाले EditText को लागू करने के लिए, शून्य वैल्यू इस्तेमाल करने की अनुमति दे. - EmojiCompatInitializer का इस्तेमाल करने पर, शुरुआती स्टार्टअप में होने वाली देरी को कम किया गया है. अब यह पहली ऐक्टिविटी के फिर से शुरू होने के बाद ट्रिगर होता है. इससे ऐप्लिकेशन को बिना किसी रुकावट के शुरू किया जा सकता है. साथ ही, इससे उन ऐप्लिकेशन के लिए फ़ॉन्ट लोड करने से बचा जा सकता है जो कभी यूज़र इंटरफ़ेस (यूआई) नहीं दिखाते. कुछ समय बाद, EmojiCompat इमोजी फ़ॉन्ट लोड करने के लिए एक थ्रेड बनाएगा.
- डिले को लागू करने के लिए,
androidx.emoji2:emoji2
सेandroidx.lifecycle:lifecycle-process
पर नई डिपेंडेंसी जोड़ी जाती है. इससे, लाइफ़साइकल (जैसे कि appcompat वाले ऐप्लिकेशन) को पहले से शामिल करने वाले ऐप्लिकेशन के APK साइज़ पर बहुत कम असर पड़ेगा.
एपीआई में हुए बदलाव
- AppCompatEditText में null KeyListener की अनुमति दें. इससे 1.4.0-alpha01 वर्शन में AppCompatEditText में जोड़े गए non-null एनोटेशन को हटा दिया जाता है. साथ ही, null पास किए जाने पर, पहले जैसा व्यवहार वापस आ जाता है. (I21482, b/189559345)
गड़बड़ियां ठीक की गईं
- EmojiCompatInitializer को बदलकर, फ़ॉन्ट लोड होने में 500 मि॰से॰ तक की देरी करें. ऐसा पहली बार
Activity.onResume
के बाद किया जाता है. इससे किसी गतिविधि कोApplication.onCreate
औरActivity.onCreate
बिना किसी रुकावट के करने की अनुमति मिलती है. साथ ही, यह भी पक्का किया जाता है कि ऐप्लिकेशन के चालू होने के कुछ समय बाद ही इमोजी फ़ॉन्ट लोड हो जाए. (I4bff7)
वर्शन 1.0.0-alpha02
2 जून, 2021
androidx.emoji2:emoji2:1.0.0-alpha02
, androidx.emoji2:emoji2-views:1.0.0-alpha02
, और androidx.emoji2:emoji2-views-helper:1.0.0-alpha02
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
emoji2-views-helper
में पैकेज का नाम बदलकरandroidx.emoji2.viewsintegration
कर दिया गया है. AppCompat1.4.0-alpha01
के लिए, यह एक बड़ा बदलाव है. ऐप्लिकेशन को यह पक्का करना होगा कि AppCompat की डिपेंडेंसी को अपडेट किया गया हो, ताकि emoji2 के नए वर्शन का इस्तेमाल किया जा सके. (Ie8397)
वर्शन 1.0.0-alpha01
18 मई, 2021
androidx.emoji2:emoji2:1.0.0-alpha01
, androidx.emoji2:emoji2-views:1.0.0-alpha01
, और androidx.emoji2:emoji2-views-helper:1.0.0-alpha01
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
इस शुरुआती रिलीज़ में उपलब्ध सुविधाएं
हमारा सुझाव है कि सभी ऐप्लिकेशन में emojicompat को इंटिग्रेट करें, ताकि वे API19 से नए इमोजी के साथ काम कर सकें. आपके ऐप्लिकेशन में मौजूद सभी यूज़र जनरेटेड कॉन्टेंट में 🎉 शामिल है.
EmojiCompat को androidx.emoji
आर्टफ़ैक्ट से नए androidx.emoji2
में ले जाया गया है. यह अब alpha01 में है. नए आर्टफ़ैक्ट, पिछले वर्शन की जगह ले लेते हैं.
emoji2
को AppCompat 1.4.0-alpha01
से शुरू होने वाले AppCompat में डिपेंडेंसी के तौर पर जोड़ा गया है. साथ ही, AppCompat व्यू के लिए यह डिफ़ॉल्ट रूप से चालू होता है.
emoji2
आर्टफ़ैक्ट, androidx.startup
लाइब्रेरी का इस्तेमाल करके, नया ऑटोमैटिक कॉन्फ़िगरेशन उपलब्ध कराता है. 🐻❄️ को दिखाने के लिए, अब आपको कोई 👨🏽💻 कोड लिखने की ज़रूरत नहीं है.
इमोजी से इमोजी2 में हुए बदलाव
androidx.startup
का इस्तेमाल करके, अपने-आप कॉन्फ़िगर होने की नई सुविधाEmojiCompatInitializer
जोड़ी गई.- नया डिफ़ॉल्ट कॉन्फ़िगरेशन जोड़ा गया है. यह कॉन्फ़िगरेशन, सेवा की लोकेशन का इस्तेमाल करके
DefaultEmojiCompatConfiguration
में डाउनलोड किए जा सकने वाले फ़ॉन्ट का प्रोवाइडर ढूंढता है. - क्लास को
androidx.emoji
पैकेज सेandroidx.emoji2
में ले जाया गया. - स्प्लिट
EmojiTextView
और उससे जुड़े व्यू को अलग आर्टफ़ैक्टemoji2-views
में ले जाएं. इस विकल्प का इस्तेमाल सिर्फ़ तब किया जाना चाहिए, जब आपका ऐप्लिकेशन appcompat का इस्तेमाल न करता हो. - इमोजीकॉम्पैट को कस्टम व्यू में इंटिग्रेट करने के लिए, एक्सट्रैक्ट किए गए हेल्पर को अलग आर्टफ़ैक्ट
emoji2-views-helper
में रखा गया है. - शून्य होने की अनुमति से जुड़े एनोटेशन जोड़े गए.
emoji2-views-helper
में मौजूद हेल्पर का इस्तेमाल अब तब भी किया जा सकता है, जबEmojiCompat
शुरू न किया गया हो. इससे पहले, ऐसा करने पर अपवाद मिलता था.
आपको कौनसी डिपेंडेंसी जोड़नी चाहिए?
- AppCompat का इस्तेमाल करने वाले ऐप्लिकेशन को, AppCompat के AppCompat
1.4.0-alpha01
या उसके बाद के वर्शन पर अपग्रेड करना चाहिए. - जिन ऐप्लिकेशन में AppCompat का इस्तेमाल नहीं किया जाता है और जो प्लैटफ़ॉर्म से
TextView
/EditText
का इस्तेमाल करते हैं उन्हेंemoji2-views
सेEmojiTextView
और उससे जुड़ी क्लास का इस्तेमाल करना चाहिए.
कस्टम व्यू में सहायता पाने का तरीका
- AppCompat का इस्तेमाल करने वाले ऐप्लिकेशन को प्लैटफ़ॉर्म
TextView
वगैरह के बजाय,AppCompatTextView
,AppCompatButton
वगैरह को बढ़ाना चाहिए. - AppCompat के बिना वाले ऐप्लिकेशन को
androidx.emoji2:emoji2-views-helper
डिपेंडेंसी जोड़नी चाहिए. साथ ही, कस्टमTextView
याEditText
सबक्लास के साथ इंटिग्रेट करने के लिए, हेल्पर का इस्तेमाल करना चाहिए.
अपने-आप शुरू होने की सुविधा को कॉन्फ़िगर करना
ऐप्लिकेशन, मेनिफ़ेस्ट में इसे जोड़कर अपने-आप शुरू होने की सुविधा बंद कर सकते हैं:
<provider android:name="androidx.startup.InitializationProvider" android:authorities="${applicationId}.androidx-startup" android:exported="false" tools:node="merge"> <meta-data android:name="androidx.emoji2.text.EmojiCompatInitializer" tools:node="remove" /> </provider>
इससे अपने-आप कॉन्फ़िगर होने की सुविधा बंद हो जाती है. इसके बाद,
EmojiCompat.init
को कस्टम कॉन्फ़िगरेशन पास किया जा सकता है. सिस्टम के डिफ़ॉल्ट कॉन्फ़िगरेशन कोDefaultEmojiCompatConfig.create(context)
से वापस पाया जा सकता है, ताकिEmojiCompat.init
को पास करने से पहले उसे और कॉन्फ़िगर किया जा सके.