Emoji2
آخرین به روز رسانی | انتشار پایدار | کاندید را آزاد کنید | نسخه بتا | انتشار آلفا |
---|---|---|---|---|
4 سپتامبر 2024 | 1.5.0 | - | - | - |
اعلام وابستگی ها
برای افزودن وابستگی به Emoji2، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.
وابستگیهای مصنوعات مورد نیاز خود را در فایل 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" }
کاتلین
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 کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.
برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.
Emoji2 Emojipicker نسخه 1.0
نسخه 1.5.0
4 سپتامبر 2024
androidx.emoji2:emoji2-*:1.5.0
منتشر شد. نسخه 1.5.0 شامل این commit ها است.
تغییرات مهم از 1.4.0
- پشتیبانی از ایموجی 15.1 و رابط کاربری انتخابگر شکلک دو طرفه. یک کلیک ساده روی سوئیچر دو طرفه به کاربران امکان می دهد بین نسخه های سمت چپ و راست شکلک ها جابجا شوند.
- از انتخابگر ایموجی چند پوسته پشتیبانی کنید. ایموجیهای زن و شوهر با فشار طولانی، یک انتخابگر شکلک چند نفره برای حالت صفر نشان میدهند. وقتی کاربر روی نیمه سمت چپ یک ایموجی ضربه میزند، پیشنمایش ایموجی در پایین سمت راست بهروزرسانی میشود. هنگامی که کاربر هر دو نیمه یک ایموجی را انتخاب می کند، پیش نمایش ایموجی در پایین سمت راست کل شکلک را نشان می دهد و کاربر می تواند آن را وارد کند.
نسخه 1.0.0-alpha03
8 مارس 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha03
منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.
رفع اشکال
- حذف منابع غیر ضروری و کاهش حجم کتابخانه تا 0.3M.
نسخه 1.0.0-alpha02
22 فوریه 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha02
منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.
تغییرات API
- API جدید برای مشتریان جاوا اضافه شد تا بتوانند ایموجی های اخیر را ارائه دهند. ( 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 حاوی این commit ها است.
ویژگی های جدید
- یک انتخابگر شکلک معرفی کرد که تجربه کاربری ثابتی را با جدیدترین شکلکها در دستگاهها و برنامههای OEM سیستم عامل Android ارائه میکند. جدیدترین پشتیبانی از شکلک و رابط کاربری انتخاب کننده شکلک شامل انواع رنگ پوست و پشتیبانی از Emoji Compat را ارائه می دهد.
تغییرات API
- کلاس
EmojiPickerView
معرفی کرد که ایموجی های به روز را در نمای عمودی قابل پیمایش با هدر افقی قابل کلیک ارائه می دهد. - ستون های شبکه جمع کننده emoji را می توان از طریق ویژگی XML
emojiGridColumns
یا تابعsetEmojiGridColumns()
تنظیم کرد. - ردیفهای شبکه جمعکننده emoji را میتوان از طریق ویژگی XML
emojiGridRows
یا تابعsetEmojiGridRows()
تنظیم کرد. - شنونده ایموجی انتخاب شده را می توان از طریق
setOnEmojiPickedListener()
تنظیم کرد و هر زمان که کاربر روی هر ایموجی کلیک کند به شنونده اطلاع داده می شود. - ارائهدهنده emoji اخیر را میتوان با
setRecentEmojiProvider()
ارائه کرد. این یک تابع اختیاری است. اگر ارائهدهنده Emoji اخیر تنظیم نشده باشد، یک ارائهدهنده شکلک اخیر پیشفرض توسط کتابخانه استفاده میشود. رفتار پیشفرض به صورت زیر تعریف میشود: 1) همه شکلکهای انتخابی در سطح هر برنامه در اولویتهای مشترک ذخیره میشوند. 2) انتخابگر حداکثر 3 ردیف از ایموجی های انتخاب شده را به ترتیب زمانی معکوس نمایش می دهد. - کلاس
EmojiViewItem
معرفی شد که ایموجی نمایش داده شده و انواع شکلک های آن را نگه می دارد. - رابط
RecentEmojiProvider
معرفی کرد که می تواند برای ارائه لیست ایموجی های اخیر پیاده سازی شود.recentEmojiProvider
مسئول ارائه ایموجیها در دسته «اخیراً استفاده شده» است.
نسخه 1.5
نسخه 1.5.0
4 سپتامبر 2024
androidx.emoji2:emoji2-*:1.5.0
منتشر شد. نسخه 1.5.0 شامل این commit ها است.
تغییرات مهم از 1.4.0
- پشتیبانی از ایموجی 15.1 و رابط کاربری انتخابگر شکلک دو طرفه. یک کلیک ساده روی سوئیچر دو طرفه به کاربران امکان می دهد بین نسخه های سمت چپ و راست شکلک ها جابجا شوند.
- از انتخابگر ایموجی چند پوسته پشتیبانی کنید. ایموجیهای زن و شوهر با فشار طولانی، یک انتخابگر شکلک چند نفره برای حالت صفر نشان میدهند. وقتی کاربر روی نیمه سمت چپ یک ایموجی ضربه میزند، پیشنمایش ایموجی در پایین سمت راست بهروزرسانی میشود. هنگامی که کاربر هر دو نیمه یک ایموجی را انتخاب می کند، پیش نمایش ایموجی در پایین سمت راست کل شکلک را نشان می دهد و کاربر می تواند آن را وارد کند.
نسخه 1.5.0-rc01
21 آگوست 2024
androidx.emoji2:emoji2-*:1.5.0-rc01
منتشر شد. نسخه 1.5.0-rc01 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از ایموجی 15.1 و رابط کاربری انتخابگر شکلک دو طرفه. یک کلیک ساده روی سوئیچر دو طرفه به کاربران امکان می دهد بین نسخه های سمت چپ و راست شکلک ها جابجا شوند.
- از انتخابگر ایموجی چند پوسته پشتیبانی کنید. ایموجیهای زن و شوهر با فشار طولانی، یک انتخابگر شکلک چند نفره برای حالت صفر نشان میدهند. وقتی کاربر روی نیمه سمت چپ یک ایموجی ضربه میزند، پیشنمایش ایموجی در پایین سمت راست بهروزرسانی میشود. هنگامی که کاربر هر دو نیمه ایموجی را انتخاب می کند، پیش نمایش کل ایموجی را نشان می دهد و usr می تواند آن را وارد کند.
رفع اشکال
- طرح دستی دسترسی به APIهای پلتفرم جدید حذف شد زیرا این به طور خودکار از طریق مدلسازی API هنگام استفاده از R8 با AGP 7.3 یا جدیدتر (مثلا R8 نسخه 3.3) و برای همه ساختها هنگام استفاده از AGP 8.1 یا بالاتر (به عنوان مثال D8 نسخه 8.1) اتفاق میافتد. به مشتریانی که از AGP استفاده نمیکنند، توصیه میشود به نسخه 8.1 یا بالاتر D8 بهروزرسانی کنند. برای جزئیات بیشتر به این مقاله مراجعه کنید. ( 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 حاوی این commit ها است.
ویژگی های جدید
-
emoji2-bundled
حاوی یک فونت ایموجی به روز شده برای پشتیبانی از Emoji 15.1 است.
تغییرات API
- برای کنترل رشته پاسخ به تماس برای
InitCallback
، اجراکنندهها را اضافه کنید. ( I32b67 ) -
BundledEmojiCompatConfig
اکنون از یک مجری برای کنترل موضوعات بارگیری استفاده می کند. ( I00e81 )
نسخه 1.4
نسخه 1.4.0
9 آگوست 2023
androidx.emoji2:emoji2-*:1.4.0
منتشر شد. نسخه 1.4.0 حاوی این commit ها است.
تغییرات مهم از 1.3.0
- کتابخانه انتخاب کننده ایموجی معرفی شد. برای جزئیات بیشتر، سند توسعه دهنده را بررسی کنید.
نسخه 1.4.0-rc01
26 جولای 2023
androidx.emoji2:emoji2-*:1.4.0-rc01
منتشر شد. نسخه 1.4.0-rc01 حاوی این commit ها است.
تغییرات API
- فهرست
registerSource
معرفی کنید ( Iae92f ) - بازخورد شورای API: به
TransitionManager.seekTo()
بهcreateSeekController()
تغییر نام داد. لطفاً نظر قبلی را در مورد افزودنTransitionManager.seekTo()
بهTransitionManager.createSeekController()
تنظیم کنید. ( Idbeb1 ) -
ExerciseRouteResult
اضافه شد، که سوپرکلاس برایData
،NoData
وConsentRequiredStates
نیست.ExerciseRoute
به عنوان یک کلاس مستقل اضافه شده است که داده های مکان را برای مسیر نگه می دارد. ( I22eed ) -
PagerLayoutInfo
با اطلاعاتی که پس از یک اندازه گیری در پیجر جمع آوری می شود، معرفی کرد. همچنین PageInfo، اطلاعات مربوط به یک صفحه اندازه گیری شده در پیجر را معرفی کرد. ( Iad003 , b/283098900 )
رفع اشکال
- ما رنگهای
Button
،IconButton
وTextButton
مطابق با طراحی Material3 بهروزرسانی کردهایم. نقش معناییButton
,IconButton
وTextButton
اکنون می تواند با استفاده ازModifier.semantics
لغو شود. ( Ib2495 ) - انتخاب برگه و به روز رسانی نشانگر
EmojiPickerView
با یک کلیک پشت سر هم رفع شد. ( I4db04 ) -
FileNotFoundException
در نمایش انتخابگر شکلک ( I353e4 ) - هنگام استفاده از
EmojiPickerView
( I0a144 )WindowManager.BadTokenException
را بگیرید
نسخه 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
اکنون از کنترلکننده هر نما استفاده میکنند و به نماهایی که در رشته اصلی نیستند احترام میگذارند. ( 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
Emoji Picker یک راه حل رابط کاربری است که ظاهر و احساس مدرن، ایموجی های به روز و سهولت استفاده را ارائه می دهد. کاربران میتوانند شکلکها و انواع آنها را مرور و انتخاب کنند، یا از میان شکلکهایی که اخیراً استفاده کردهاند، انتخاب کنند. با استفاده از این کتابخانه، برنامهها در سرتاسر OEMهای مختلف میتوانند یک تجربه ایموجی فراگیر و یکپارچه را به کاربران خود ارائه دهند بدون اینکه توسعهدهندگان مجبور باشند انتخابگر شکلک خود را از ابتدا بسازند و نگهداری کنند.
ایموجی های به روز
هر سال ایموجیهای جدید منتشر میشوند و ما بهطور انتخابی آنها را در Emoji Picker قرار میدهیم. برای اطمینان از سازگاری با عقب، ما یک بررسی دقیق رندرپذیری ایموجی در داخل انجام می دهیم تا توفو را حذف کنیم. این اطمینان حاصل می کند که کتابخانه با چندین نسخه و دستگاه اندروید سازگار است.
انواع چسبنده
با فشار طولانی یک ایموجی، منویی از انواع مختلف مانند جنسیت یا رنگ پوست مختلف نمایش داده می شود. گونه ای که انتخاب می کنید در انتخابگر شکلک ذخیره می شود و آخرین نوع انتخاب شده در پانل اصلی استفاده می شود. با استفاده از این ویژگی، کاربران می توانند انواع شکلک های دلخواه خود را تنها با یک ضربه ارسال کنند.
ایموجی های اخیر
RecentEmojiProvider
مسئول ارائه ایموجیها در دسته «اخیراً استفاده شده» است. این کتابخانه یک ارائهدهنده شکلک اخیر پیشفرض دارد که رایجترین موارد استفاده را برآورده میکند:
- همه شکلکهای انتخابی در سطح هر برنامه در اولویتهای مشترک ذخیره میشوند.
- انتخابگر حداکثر 3 ردیف از شکلکهای انتخابی را به ترتیب زمانی معکوس نمایش میدهد.
اگر این رفتار پیشفرض کافی است، دیگر نیازی به تنظیم متد setRecentEmojiProvider()
ندارید.
با EmojiCompat کار کنید
اگر برنامه دارای نمونه EmojiCompat
باشد، از آن در انتخابگر شکلک برای ارائه هرچه بیشتر شکلکهای ممکن استفاده میشود. اگر EmojiCompat
غیرفعال باشد، انتخابگر شکلک همچنان خوب کار می کند.
نحوه استفاده از کتابخانه
برای استفاده از کتابخانه، یک توسعه دهنده برنامه باید
androidx.emoji2:emojipicker:$version
درbuild.gradle
وارد کنید.dependencies { implementation "androidx.emoji2:emojipicker:$version" }
نمای انتخابگر ایموجی را باد کنید و به صورت اختیاری
emojiGridRows
وemojiGridColumns
را بر اساس اندازه دلخواه هر سلول ایموجی تنظیم کنید- میتوانید آنها را تنظیم نشده رها کنید، پیشفرض ۹
emojiGridColumns
است، ردیفها براساس ارتفاع نمای والد وemojiGridColumns
محاسبه میشوند. - میتوانید
emojiGridRows
بهعنوان یک شناور تنظیم کنید تا اگر در XML به پایین اسکرول کنید، ایموجیهای بیشتری وجود دارد.
<androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" app:emojiGridColumns="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" />
برای اجرای نمونه برنامه نمونه را ببینید.
یک سطح کامل API را می توان در اینجا پیدا کرد.
نمونه برنامه
این برنامه نمونه موارد استفاده اساسی به همراه سناریوهای اضافی زیر را نشان می دهد:
- نمای دوباره چیدمان شد زیرا
emojiGridRows
وemojiGridColumns
بازنشانی شدند. - ارائهدهنده Emoji اخیر برای مرتبسازی بر اساس فرکانس لغو شده است.
- سفارشی سازی سبک
تغییرات API
کتابخانه Emoji Picker با API های جدید زیر به روز شده است:
- کلاس
EmojiPickerView
که ایموجی های به روز را در نمای عمودی قابل پیمایش با هدر افقی قابل کلیک ارائه می دهد. - امکان تنظیم تعداد ستونها و ردیفها در شبکه انتخابکننده emoji از طریق ویژگیهای XML
emojiGridColumns
وemojiGridRows
یا متدهایsetEmojiGridColumns()
وsetEmojiGridRows()
. - امکان تنظیم یک شنونده انتخاب شده ایموجی از طریق متد
setOnEmojiPickedListener()
. هر زمان که کاربر روی هر ایموجی کلیک کند، شنونده مطلع می شود. - امکان ارائه یک ارائه دهنده ایموجی اخیر از طریق متد
setRecentEmojiProvider()
. این یک تابع اختیاری است. اگر ارائهدهنده ایموجی اخیر تنظیم نشده باشد، یک ارائهدهنده شکلک اخیر پیشفرض توسط کتابخانه استفاده خواهد شد. رفتار پیش فرض به صورت زیر تعریف می شود:- همه شکلکهای انتخابی در سطح هر برنامه در اولویتهای مشترک ذخیره میشوند.
- انتخابگر حداکثر 3 ردیف از شکلکهای انتخابی را به ترتیب زمانی معکوس نمایش میدهد.
- کلاس
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 حاوی این commit ها است.
رفع اشکال
- تست ها را برطرف کنید، تست های فلیک را غیرفعال کنید و پاکسازی ها را انجام دهید.
نسخه 1.3
نسخه 1.3.0
22 مارس 2023
androidx.emoji2:emoji2-*:1.3.0
منتشر شد. نسخه 1.3.0 حاوی این commit ها است.
تغییرات مهم از 1.2.0
- این نسخه به Compose Foundation
1.4.0
و بالاتر اجازه می دهد تا یکپارچه سازی emoji2 را فعال کند. - همچنین ویژگی هایی را برای جایگزینی
EmojiSpans
با کد طراحی سفارشی و همچنین پشتیبانی از موارد استثنای ایموجی تعریف شده در اندروید را امکان پذیر می کند.
نسخه 1.3.0-rc01
8 مارس 2023
androidx.emoji2:emoji2-*:1.3.0-rc01
منتشر شد. نسخه 1.3.0-rc01 حاوی این commit ها است.
ویژگی های جدید
- این نسخه برای پشتیبانی از ادغام emoji2 compose است.
تغییرات API
- دهانه ها را برای کد طراحی سفارشی جایگزین کنید.
- پرس و جو استثناهای سیستم.
رفع اشکال
- و اشکالی را که در آن دهانههای پسزمینه به درستی در پشت
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
اعمال نشده بود، برطرف کرد. - این نسخه API های لازم برای پشتیبانی از
EmojiCompat
در Compose را اضافه می کند. انتظار داشته باشید که در نسخه ای نزدیک از Emoji Compat پشتیبانی از نوشتن پشتیبانی کند.
نسخه 1.3.0-alpha01
11 ژانویه 2023
androidx.emoji2:emoji2-*:1.3.0-alpha01
منتشر شد. نسخه 1.3.0-alpha01 حاوی این commit ها است.
API های جدید برای تعاملات سطح پایین
- پرس و جو استثناهای سیستم
- جایگزینی دهانه ها برای کد طراحی سفارشی
- و اشکالی را که در آن دهانههای پسزمینه به درستی در پشت
EmojiSopans
اعمال نشده بود، برطرف کرد. - این نسخه API های لازم برای پشتیبانی از
EmojiCompat
در Compose را اضافه می کند. انتظار داشته باشید که در نسخه ای نزدیک از Emoji Compat پشتیبانی از نوشتن پشتیبانی کند.
تغییرات API
- قابلیت جستجو در موارد استثنای سیستم به
TypefaceEmojiRasterizer
اضافه شده است. ( I5653e ) - API جدید
EmojiCompat.SpanFactory
برای جایگزینی رفتار پیشفرضEmojiSpan
با طراحی سفارشی و کد اندازهگذاری اضافه شد. ( Ib69d9 ) -
EmojiCompat
به Compose اضافه شد ( I96f37 , b/139326806 )
رفع اشکال
- Emoji2 اکنون پسزمینههای
BackgroundSpan
را به درستی ترسیم میکند. ( Ide6a8 , b/230525134 ) - نهایی کردن API های AppCompat برای نسخه 1.5.0-beta01 ( I2a43d ، b/236866227 )
نسخه 1.2
نسخه 1.2.0
10 آگوست 2022
androidx.emoji2:emoji2-*:1.2.0
منتشر شد. نسخه 1.2.0 حاوی این commit ها است.
تغییرات مهم از 1.1.0
این نسخه رفع اشکال است. هیچ ویژگی یا API جدیدی از 1.1.0 اضافه نشده است.
با این حال، برنامههایی که از PrecomputedText
یا TextView.setText(char[])
استفاده میکنند، باید به این نسخه برخورد کنند.
اشکالات زیر برطرف شد:
-
Emoji2
با کنار گذاشتن طرحبندی متن از پیش محاسبهشده قبلی، ایموجی را بهPrecomputedText
اضافه میکند. ( I47d06 , b/211231958 ) - رفع خرابی ویرایشگر Backport از Android P به
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 حاوی این commit ها است.
- هیچ تغییری نسبت به آخرین نسخه بتا وجود ندارد.
نسخه 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 حاوی این commit ها است.
ویژگی های جدید
- هیچ تغییری در این نسخه وجود ندارد.
نسخه 1.2.0-alpha03
6 آوریل 2022
androidx.emoji2:emoji2-*:1.2.0-alpha03
منتشر شد. نسخه 1.2.0-alpha03 حاوی این commit ها است.
ویژگی های جدید
- هیچ تغییری نسبت به آخرین نسخه (این نسخه برای پشتیبانی از نسخه appcompat است).
نسخه 1.2.0-alpha02
23 مارس 2022
androidx.emoji2:emoji2-*:1.2.0-alpha02
منتشر شد. نسخه 1.2.0-alpha02 حاوی این commit ها است.
رفع اشکال
- Emoji2 با کنار گذاشتن طرحبندی متن از پیش محاسبهشده قبلی، ایموجی را به
PrecomputedText
اضافه میکند. ( I47d06 , b/211231958 ) - رفع خرابی ویرایشگر Backport از 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 حاوی این commit ها است.
بدون تغییر از 1.1.0.
1.1
نسخه 1.1.0
23 فوریه 2022
androidx.emoji2:emoji2-*:1.1.0
منتشر شد. نسخه 1.1.0 حاوی این commit ها است.
تغییرات مهم از 1.0.0
- emoji2-bundled حاوی فونت emoji 14 است
-
getEmojiMatch
API جدید اطلاعات دقیقی را به صفحه کلیدها برمی گرداند تا تصمیم بگیرند که چگونه ایموجی در حضور یک قلم emojicompat که در پشت فونت سیستم قرار دارد نمایش داده شود. - رفع اشکال برای
NumberKeyListener
که ورودی رقم را به درستی کاراکترها را فیلتر می کند.
نسخه 1.1.0-rc01
9 فوریه 2022
androidx.emoji2:emoji2-*:1.1.0-rc01
منتشر شد. نسخه 1.1.0-rc01 حاوی این commit ها است.
ویژگی های جدید
هیچ تغییری نسبت به بتا وجود ندارد.
ویژگی های جدید در مقایسه با emoji2 1.0.0:
-
emoji2-bundled
حاوی فونت emoji 14 است -
getEmojiMatch
API جدید اطلاعات دقیقی را به صفحه کلیدها برمی گرداند تا تصمیم بگیرند که چگونه ایموجی در حضور یک قلم emojicompat که در پشت فونت سیستم قرار دارد نمایش داده شود. - رفع اشکال برای
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 حاوی این commit ها است.
ویژگی های جدید
-
emoji2-bundled
حاوی فونت emoji 14 است -
getEmojiMatch
API جدید اطلاعات دقیقی را به صفحه کلیدها برمی گرداند تا تصمیم بگیرند که چگونه ایموجی در حضور یک قلم emojicompat که در پشت فونت سیستم قرار دارد نمایش داده شود. - رفع اشکال برای
NumberKeyListener
که ورودی رقم را به درستی کاراکترها را فیلتر می کند
تغییرات API
- API جدید
getEmojiMatch
را اضافه کنید تا به صفحهکلیدها اجازه دهید رفتار تطابق اموجیها را با دقت بیشتری در emojicompat جستجو کنند. -
hasEmojiGlyph
منسوخ کنید، زیرا مقدار بازگشتی بولی آن هنگام آزمایش با فونتی که قدیمیتر از فونت ایموجی پلتفرم است، دقیق نیست. باgetEmojiMatch
جایگزین کنید. ( Ie693d )
رفع اشکال
- Emoji2 نمونههای
NumberKeyListener
را نمیپیچد، و اجازه میدهد که زبان محلی توسطTextView
پیکربندی شود. - Appcompat نمونههایی از
NumberKeyListener
را که بهsetKeyListener
ارسال میشود را نمیپیچد و بهTextView
اجازه میدهد تا به درستی محلی را درNumberKeyListeners
پیکربندی کند. ( IBf113 , b/207119921 )
1.0
نسخه 1.0.1
15 دسامبر 2021
androidx.emoji2:emoji2-*:1.0.1
منتشر شد. نسخه 1.0.1 حاوی این commit ها است.
رفع اشکال
-
Emoji2
نمونههایNumberKeyListener
را نمیپیچد، و اجازه میدهد که زبان محلی توسطTextView
پیکربندی شود. - Appcompat نمونههایی از
NumberKeyListener
را که بهsetKeyListener
ارسال میشود را نمیپیچد و بهTextView
اجازه میدهد تا به درستی محلی را درNumberKeyListeners
پیکربندی کند. ( IBf113 , b/207119921 )
نسخه 1.0.0
17 نوامبر 2021
androidx.emoji2:emoji2-*:1.0.0
منتشر شد. نسخه 1.0.0 حاوی این commit ها است.
ویژگی های اصلی 1.0.0
androidx.emoji2 جایگزین androidx.emoji با قابلیتهای اضافی میشود:
- کاهش اندازه APK در مقابل androidx.emoji
- پیکربندی خودکار
- به عنوان یک وابستگی به appcompat 1.4 اضافه شده است
برای اطلاعات بیشتر درباره androidx.emoji2 به پشتیبانی از اموجی مدرن و بحث نشست برنامهنویس Android ما مراجعه کنید . نمایش همه شکلکها در برنامه Android Dev شما .
نسخه 1.0.0-rc01
27 اکتبر 2021
androidx.emoji2:emoji2-*:1.0.0-rc01
منتشر شد. نسخه 1.0.0-rc01 حاوی این commit ها است.
- از نسخه beta02 تغییری ایجاد نشده است.
Emoji2 نسخه 1.0.0-beta01
15 سپتامبر 2021
androidx.emoji2:emoji2-*:1.0.0-beta01
منتشر شد. نسخه 1.0.0-beta01 حاوی این تعهدات است.
تغییرات API
setLoadingExecutor
بهFontRequestEmojiCompatConfig
اضافه شد که جایگزین API قبلیsetHandler
می شود. این API به برنامهها اجازه میدهد تاFontRequestEmojiCompatConfig
را برای استفاده از هر اجراکننده پسزمینه پیکربندی کنند.این تغییر یک تغییر قطعی از
androidx.emoji:emoji
است، بنابراینsetHandler
به عنوان یک API منسوخ شده بدون عملیات برای کمک به مهاجرت حفظ میشود. ( I6cd48 )EmojiCompat
EditorInfo.extras
به درستی در Android 11 تنظیم می کند- ویجتهای سفارشی که از IME استفاده میکنند و EditText را طبقهبندی نمیکنند، ممکن است با
EmojiCompat.updateEditorInfo
تماس بگیرند تا به IME اطلاع دهند که از پردازش EmojiCompat پشتیبانی میکنند. ( I1ea9b )
- ویجتهای سفارشی که از IME استفاده میکنند و EditText را طبقهبندی نمیکنند، ممکن است با
رفع اشکال
-
DefaultEmojiCompatConfig
برای جستجوی صحیح ارائهدهنده فونت emoji در API 19 و 28 برطرف کنید. این یک اشکال معرفی شده در 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 حاوی این commit ها است.
ویژگی های جدید
این نسخه یک نسخه رفع اشکال و تثبیت کننده است.
- EmojiEditTextHelper اکنون اجازه می دهد
null
به عنوان یک KeyListener ارسال شود. این امر به رفتار پلتفرم اجازه می دهد تا null ها را برای ایموجی هایی که از اجرای EditText پشتیبانی می کنند، اعمال کنند. - هنگام استفاده از EmojiCompatInitializer، تأخیر راهاندازی اولیه بهبود مییابد تا پس از ازسرگیری اولین فعالیت فعال شود. این اجازه میدهد تا راهاندازی برنامه بدون ادعا اتفاق بیفتد، و از بارگیری فونت برای شروع برنامههایی که هرگز UI نشان نمیدهند، جلوگیری میکند. پس از یک تاخیر کوتاه، EmojiCompat یک رشته برای بارگیری فونت ایموجی ایجاد می کند.
- یک وابستگی جدید به
androidx.lifecycle:lifecycle-process
ازandroidx.emoji2:emoji2
برای اجرای تاخیر اضافه شده است. این برای برنامههایی که از قبل شامل چرخه حیات هستند (مانند برنامههایی با appcompat) تأثیر ناچیزی در اندازه APK خواهد داشت.
تغییرات API
- اجازه دادن به KeyListener تهی در AppCompatEditText. این حاشیه نویسی غیر تهی را که در 1.4.0-alpha01 به AppCompatEditText اضافه شده بود، معکوس می کند و رفتار قبلی را در صورت تهی شدن بازیابی می کند. ( 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 حاوی این commit ها است.
تغییرات API
- بسته در
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 حاوی این commit ها است.
ویژگی های این نسخه اولیه
ادغام emojicompat برای همه برنامهها برای پشتیبانی از شکلکهای مدرن API19 توصیه میشود. تمام محتوای تولید شده توسط کاربر در برنامه شما حاوی 🎉 است.
EmojiCompat از مصنوعات androidx.emoji
به androidx.emoji2
جدید منتقل شده است که اکنون در alpha01 قرار دارد. مصنوعات جدید جایگزین نسخه قبلی می شوند.
emoji2
به عنوان یک وابستگی به AppCompat اضافه شده است که در AppCompat 1.4.0-alpha01
شروع می شود و به طور پیش فرض برای نمایش های AppCompat فعال است.
مصنوع emoji2
با استفاده از کتابخانه androidx.startup
پیکربندی خودکار جدیدی را معرفی می کند. دیگر نیازی به نوشتن کد 👨🏽💻 برای نمایش 🐻❄️ ندارید.
تغییرات emoji2 از emoji
- اضافه شدن پیکربندی خودکار جدید
EmojiCompatInitializer
با استفاده ازandroidx.startup
. - پیکربندی پیشفرض جدیدی اضافه شد که از مکان سرویس برای یافتن ارائهدهنده فونتهای قابل دانلود در
DefaultEmojiCompatConfiguration
استفاده میکند. - کلاس ها از بسته
androidx.emoji
بهandroidx.emoji2
منتقل شدند. -
EmojiTextView
و نماهای مرتبط را به یک مصنوع جداگانهemoji2-views
تقسیم کنید. این فقط در صورتی باید استفاده شود که برنامه شما از appcompat استفاده نکند. - کمک های استخراج شده برای ادغام emojicompat در نماهای سفارشی در یک مصنوع جداگانه
emoji2-views-helper
. - حاشیه نویسی پوچ پذیری اضافه شده است.
- کمککنندههای
emoji2-views-helper
اکنون میتوانند حتی زمانی کهEmojiCompat
راهاندازی نشده باشد (قبلاً یک استثنا مطرح میکردند) استفاده شوند.
چه وابستگی را باید اضافه کنید؟
- برنامههای دارای AppCompat باید به نسخه appcompat
1.4.0-alpha01
یا بالاتر ارتقا یابند. - برنامههای بدون AppCompat با استفاده از
TextView
/EditText
از پلتفرم باید ازEmojiTextView
و کلاسهای مرتبط ازemoji2-views
استفاده کنند.
نحوه پشتیبانی در نماهای سفارشی
- برنامه های دارای AppCompat باید
AppCompatTextView
،AppCompatButton
و غیره را به جای پلتفرمTextView
و غیره گسترش دهند. - برنامههای بدون 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
ارسال کنید. پیکربندی پیشفرض سیستم ممکن است برای پیکربندی بیشتر قبل از ارسال بهEmojiCompat.init
DefaultEmojiCompatConfig.create(context)
بازیابی شود.