Emoji2

عرض رموز الإيموجي على الأجهزة الحالية والأقدم
آخر الأخبار الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار الأوّلي
‫9 سبتمبر 2026 1.6.0 1.7.0-rc01 - -

تحديد الاعتماديات

لإضافة اعتمادية على Emoji2، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:

Groovy

dependencies {
    def emoji2_version = "1.6.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.6.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 للحصول على مزيد من المعلومات.

الإصدار 1.7

الإصدار ‎1.7.0-rc01

‫9 سبتمبر 2026

تم طرح androidx.emoji2:emoji2-*:1.7.0-rc01. يتضمّن الإصدار 1.7.0-rc01 هذه التعديلات.

يركّز هذا الإصدار على تحسينات الأداء وننصح به جميع مستخدمي emoji2.

إصلاح الأخطاء

  • تم تعديل compileSdk لمكتبات Compose إلى الإصدار 37.1. سيتطلّب ذلك تعديل compileSdk بشكل متعدٍّ لجميع التطبيقات والمكتبات التي تستخدم Compose. (I05b0f)

الإصدار 1.7.0-alpha01

‫26 أغسطس 2026

تم طرح androidx.emoji2:emoji2-*:1.7.0-alpha01. يتضمّن الإصدار 1.7.0-alpha01 هذه التعديلات.

** إصدار جديد لتحسين الأداء **

يمثّل هذا الإصدار تحسّنًا كبيرًا في الأداء مقارنةً بالإصدارات السابقة.

تقليل مساحة الذاكرة المستخدَمة: تم تقليل استخدام ذاكرة الوصول العشوائي (RAM) في بنية بيانات trie الخاصة بالبيانات الوصفية من حوالي 2.2 ميغابايت إلى حوالي 80 كيلوبايت.
تقليل النفقات العامة لبدء التشغيل: تم تقليل عمليات تخصيص كائنات بدء التشغيل من 24,178 إلى 82.
مسح النص ضوئيًا بدون تخصيص: لا يتم تخصيص أي مساحة عند مسح النص اللاتيني العادي ضوئيًا.
تقليل وقت الاستجابة: تم تقليل متوسط وقت الاستجابة لمسح النصوص اللاتينية بنسبة تصل إلى %83 (من 16.43 ميكرو ثانية إلى 2.66 ميكرو ثانية).
التجاوز التلقائي على الإصدار 35 من واجهة برمجة التطبيقات والإصدارات الأحدث: يتم تلقائيًا تجاوز معالجة EmojiCompat على الأجهزة التي تتضمّن خطوطًا قابلة للتحديث على مستوى النظام.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة setUseAfterUpdatableSystemFonts إلى EmojiCompat.Config لمواصلة استخدام EmojiCompat اختياريًا على Android 15 (المستوى 35 لواجهة برمجة التطبيقات) والإصدارات الأحدث حتى عندما تتوفّر خطوط نظام قابلة للتحديث على جميع الأجهزة. ستؤدي القيمة التلقائية إلى إيقاف EmojiCompat على الإصدار 35 من واجهة برمجة التطبيقات والإصدارات الأحدث، ما يؤدي إلى توفير الذاكرة وتقليل وقت استجابة معالجة النصوص. (I7235e، b/541363642)

إصلاح الأخطاء

  • أداة اختيار Emoji2: تم تعديل compileSdk في Compose إلى الإصدار 37 من واجهة برمجة التطبيقات. وهذا يعني أنّه يجب توفُّر الإصدار 9.2.0 أو إصدار أحدث من "مكوّن Android الإضافي" عند استخدام Compose. (Id45cd، b/413674743)

الإصدار 1.6

الإصدار 1.6.0

‫10 سبتمبر 2025

تم طرح androidx.emoji2:emoji2-*:1.6.0. يتضمّن الإصدار 1.6.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.5.0:

  • يتوافق مع الإصدار 16.0 من رموز الإيموجي
  • أضِف اللاحقة "إيموجي" إلى وصف المحتوى الخاص بالإيموجي.

إصلاح الأخطاء

الإصدار 1.6.0-rc01

‫13 أغسطس 2025

تم طرح androidx.emoji2:emoji2-*:1.6.0-rc01. يتضمّن الإصدار 1.6.0-rc01 هذه التعديلات.

الميزات الجديدة

  • تمت إضافة رموز Emoji 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)
  • إضافة اللاحقة "emoji" إلى وصف المحتوى

إصلاح الأخطاء

الإصدار 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 من رموز الإيموجي وواجهة مستخدم لاختيار رموز الإيموجي ثنائية الاتجاه يسمح النقر البسيط على أداة التبديل الثنائية الاتجاه للمستخدمين بالتبديل بين إصدارات رموز الإيموجي المتّجهة لليمين واليسار.
  • إتاحة أداة اختيار رموز الإيموجي بدرجات لون البشرة المتعددة يؤدي الضغط مع الاستمرار على رموز الإيموجي الخاصة بالأزواج إلى عرض أداة اختيار رموز إيموجي متعددة الأشخاص للحالة الصفرية. عندما ينقر المستخدم على النصف الأيسر من رمز إيموجي، سيتم تعديل معاينة الإيموجي في أسفل يسار الشاشة وفقًا لذلك. عندما يختار المستخدم نصفي رمز إيموجي، ستعرض المعاينة رمز الإيموجي بالكامل ويمكن للمستخدم إدخاله.

إصلاح الأخطاء

  • تمت إزالة التحديد اليدوي لإمكانية الوصول إلى واجهات برمجة التطبيقات الجديدة للمنصة، لأنّ ذلك يحدث تلقائيًا من خلال تصميم واجهة برمجة التطبيقات عند استخدام R8 مع الإصدار 7.3 أو إصدار أحدث من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (AGP) (مثل الإصدار 3.3 من R8)، وجميع عمليات الإنشاء عند استخدام الإصدار 8.1 أو إصدار أحدث من AGP (مثل الإصدار 8.1 من D8). ننصح العملاء الذين لا يستخدمون المكوّن الإضافي لنظام Gradle المتوافق مع Android‏ (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 هذه التعديلات.

الميزات الجديدة

  • تحتوي السمة emoji2-bundled على خط إيموجي معدَّل يتوافق مع الإصدار 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)
  • ملاحظات مجلس API: تم تغيير اسم TransitionManager.seekTo() إلى createSeekController(). يُرجى تعديل التعليق السابق بشأن إضافة TransitionManager.seekTo() إلى TransitionManager.createSeekController(). (Idbeb1)
  • تمت إضافة ExerciseRouteResult، وهو ليس الفئة الرئيسية لـ Data وNoData وConsentRequiredStates. تمت إضافة ExerciseRoute كفئة مستقلة تحتوي على بيانات الموقع الجغرافي للمسار. (I22eed)
  • تم طرح PagerLayoutInfo مع معلومات تم جمعها بعد اجتياز قياس في Pager. تم أيضًا طرح PageInfo، وهي المعلومات المتعلّقة بصفحة واحدة تم قياسها في Pager. (Iad003، b/283098900)

إصلاح الأخطاء

  • عدّلنا ألوان Button وIconButton وTextButton بما يتوافق مع تصميم Material3. يمكن الآن تجاهل الدور الدلالي لكل من Button وIconButton وTextButton باستخدام Modifier.semantics. (Ib2495)
  • تم إصلاح مشكلة تأخُّر تحديثات مؤشر اختيار علامة التبويب في EmojiPickerView بنقرة واحدة. (I4db04)
  • FileNotFoundException عند عرض أداة اختيار رموز الإيموجي (I353e4)
  • التقاط WindowManager.BadTokenException عند استخدام EmojiPickerView (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 معالج كل طريقة عرض، مع مراعاة طرق العرض غير المتوفّرة في سلسلة التعليمات الرئيسية. (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 هذه التعديلات.

إصلاح الأخطاء

  • تعديل ملفات خط الأساس لأداة Lint (Iaa212)

الإصدار 1.4.0-beta01

‫5 أبريل 2023

تم طرح androidx.emoji2:emoji2-*:1.4.0-beta01. يتضمّن الإصدار 1.4.0-beta01 هذه التعديلات.

الميزات الجديدة

androidx.emoji2:emoji2-emojipicker

أداة اختيار الإيموجي هي حلّ لواجهة المستخدم يوفّر مظهرًا عصريًا، ورموز إيموجي محدّثة، وسهولة الاستخدام. يمكن للمستخدمين تصفّح رموز الإيموجي واختيارها واختيار أشكالها المختلفة، أو الاختيار من بين رموز الإيموجي التي تم استخدامها مؤخرًا. باستخدام هذه المكتبة، يمكن للتطبيقات على مختلف المصنّعين الأصليين للأجهزة توفير تجربة شاملة وموحّدة لرموز الإيموجي للمستخدمين بدون أن يضطر المطوّرون إلى إنشاء أداة اختيار رموز الإيموجي الخاصة بهم وصيانتها من البداية.

رموز إيموجي حديثة

يتم إصدار رموز إيموجي جديدة كل عام، وسنضيفها بشكل انتقائي إلى "أداة اختيار رموز الإيموجي". لضمان التوافق مع الأنظمة القديمة، نجري داخليًا عملية تحقّق دقيقة من إمكانية عرض الرموز التعبيرية لإزالة التوفو. سيضمن ذلك توافق المكتبة مع إصدارات وأجهزة Android المتعددة.

الخيارات الثابتة

سيؤدي الضغط مع الاستمرار على رمز إيموجي إلى عرض قائمة بالخيارات، مثل الجنس أو لون البشرة المختلفَين. سيتم حفظ خيارك في أداة اختيار رموز الإيموجي، وسيتم استخدام آخر خيار تم تحديده في اللوحة الرئيسية. باستخدام هذه الميزة، يمكن للمستخدمين إرسال أشكال الإيموجي المفضّلة لديهم بنقرة واحدة فقط.

الإيموجي المُستخدَم مؤخرًا

يكون RecentEmojiProvider مسؤولاً عن توفير رموز الإيموجي في فئة "المستخدمة مؤخرًا". تحتوي المكتبة على موفّر تلقائي لرموز الإيموجي المستخدَمة مؤخرًا يستوفي حالة الاستخدام الأكثر شيوعًا:

  • يتم حفظ جميع رموز الإيموجي المحدّدة على مستوى كل تطبيق في الإعدادات المفضّلة المشترَكة.
  • تعرض أداة الاختيار 3 صفوف على الأكثر من رموز الإيموجي المحدّدة، مع إزالة التكرار، بالترتيب الزمني العكسي.

إذا كان هذا السلوك التلقائي كافيًا، لن تحتاج إلى ضبط طريقة setRecentEmojiProvider().

العمل باستخدام EmojiCompat

إذا كان التطبيق يتضمّن مثيلاً من EmojiCompat، سيتم استخدامه في أداة اختيار رموز الإيموجي لعرض أكبر عدد ممكن من رموز الإيموجي. إذا كان الخيار EmojiCompat غير مفعَّل، ستظلّ أداة اختيار رموز الإيموجي تعمل بشكلٍ جيد.

كيفية استخدام المكتبة

لاستخدام المكتبة، على مطوّر التطبيق إجراء ما يلي:

  1. استيراد androidx.emoji2:emojipicker:$version في build.gradle

    dependencies {
      implementation "androidx.emoji2:emojipicker:$version"
    }
    
  2. تضخيم عرض أداة اختيار رموز الإيموجي وضبط emojiGridRows وemojiGridColumns اختياريًا استنادًا إلى الحجم المطلوب لكل خلية إيموجي

    • يمكنك تركها بدون ضبط، والقيمة التلقائية هي 9 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)
  1. بافتراض أنّك تريد إلحاق رموز الإيموجي المحدّدة بـ EditText، استخدِم setOnEmojiPickedListener()

      emojiPickerView.setOnEmojiPickedListener {
          findViewById<EditText>(R.id.edit_text).append(it.emoji)
      }
    
  2. يمكنك اختياريًا ضبط RecentEmojiProvider، راجِع نموذج التطبيق للحصول على مثال على التنفيذ.

  3. يمكنك تخصيص الأنماط اختياريًا. أنشئ نمطك الخاص لتجاوز سمات التصميم الشائعة وطبِّق النمط على 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.
  • يتم تجاهل مقدّم الرموز التعبيرية الحديثة لترتيبها حسب معدّل الاستخدام.
  • تخصيص النمط

تغييرات واجهة برمجة التطبيقات

تم تعديل مكتبة Emoji Picker لتشمل واجهات برمجة التطبيقات الجديدة التالية:

  • الفئة EmojiPickerView التي توفّر رموز إيموجي حديثة في عرض عمودي قابل للتمرير مع عنوان أفقي قابل للنقر
  • إمكانية ضبط عدد الأعمدة والصفوف في شبكة أداة اختيار رموز الإيموجي من خلال سمات 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 هذه التعديلات.

إصلاح الأخطاء

  • إصلاح الاختبارات وإيقاف الاختبارات غير المستقرة وعمليات التنظيف

الإصدار 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 هذه التعديلات.

الميزات الجديدة

  • هذا الإصدار هو إصدار ثابت يتيح دمج Compose.

الإصدار 1.3.0-beta01

‫25 يناير 2023

تم طرح androidx.emoji2:emoji2-*:1.3.0-beta01. يتضمّن الإصدار 1.3.0-beta01 هذه التعديلات.

الميزات الجديدة

  • طلب استثناءات النظام
  • استبدال النطاقات برمز رسم مخصّص
  • تم إصلاح الخطأ الذي كان يؤدي إلى عدم تطبيق النطاقات الخلفية بشكل صحيح خلف EmojiSopans.
  • يضيف هذا الإصدار واجهات برمجة التطبيقات اللازمة لتوفير EmojiCompat في Compose. نتوقّع أن يتوفّر دعم إنشاء إيموجي متوافق في إصدار مستقبلي قريب.

الإصدار 1.3.0-alpha01

‫11 يناير 2023

تم طرح androidx.emoji2:emoji2-*:1.3.0-alpha01. يتضمّن الإصدار 1.3.0-alpha01 هذه التعديلات.

واجهات برمجة تطبيقات جديدة للتفاعلات على مستوى منخفض

  • طلب البحث عن الاستثناءات على مستوى النظام
  • استبدال النطاقات برمز الرسم المخصّص
  • تم إصلاح الخطأ الذي لم يتم فيه تطبيق النطاقات في الخلفية بشكل صحيح خلف EmojiSopans.
  • يضيف هذا الإصدار واجهات برمجة التطبيقات اللازمة لتوفير EmojiCompat في Compose. نتوقّع أن يتوفّر دعم إنشاء إيموجي متوافق في إصدار مستقبلي قريب.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة إمكانية طلب استثناءات النظام إلى TypefaceEmojiRasterizer. (I5653e)
  • تمت إضافة واجهة برمجة تطبيقات جديدة EmojiCompat.SpanFactory لاستبدال السلوك التلقائي EmojiSpan برمز مخصّص للرسم وتحديد الحجم. (Ib69d9)
  • تمت إضافة EmojiCompat إلى "إنشاء" (I96f37، b/139326806)

إصلاح الأخطاء

  • سيرسم Emoji2 الآن الخلفيات بشكل صحيح من BackgroundSpan. (Ide6a8، b/230525134)
  • وضع اللمسات الأخيرة على واجهات برمجة التطبيقات AppCompat للإصدار 1.5.0-beta01 (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)
  • إصلاح خطأ تعطل المحرّر في الإصدار EditText من Android P الذي تم ضبطه لاستخدام 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 على خط إيموجي 14
  • تعرض واجهة برمجة التطبيقات الجديدة getEmojiMatch معلومات دقيقة للوحات المفاتيح لتحديد كيفية عرض الإيموجي في حال توفّر خط emojicompat خلف خط النظام
  • إصلاح الخطأ 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 معلومات دقيقة للوحات المفاتيح لتحديد كيفية عرض الإيموجي في حال توفّر خط emojicompat خلف خط النظام
  • إصلاح الخطأ NumberKeyListener الذي يجعل إدخال الأرقام يفلتر الأحرف بشكل صحيح

الإصدار 1.1.0-beta01

‫26 يناير 2022

تم طرح androidx.emoji2:emoji2-*:1.1.0-beta01. يتضمّن الإصدار 1.1.0-beta01 هذه التعديلات.

إصلاح الأخطاء

  • تم إصدار الإصدار التجريبي 01 من androidx-emoji2. ما مِن تغييرات عن الإصدار الأوّلي alpha01 (Ic61d9)

الإصدار ‎1.1.0-alpha01

15 كانون الأول (ديسمبر) 2021

تم طرح androidx.emoji2:emoji2-*:1.1.0-alpha01. يتضمّن الإصدار 1.1.0-alpha01 هذه التعديلات.

الميزات الجديدة

  • يحتوي emoji2-bundled على خط إيموجي 14
  • تعرض واجهة برمجة التطبيقات الجديدة getEmojiMatch معلومات دقيقة للوحات المفاتيح لتحديد كيفية عرض الإيموجي في حال توفّر خط emojicompat خلف خط النظام
  • إصلاح الخطأ NumberKeyListener الذي يجعل إدخال الأرقام يفلتر الأحرف بشكل صحيح

تغييرات واجهة برمجة التطبيقات

  • إضافة واجهة برمجة تطبيقات جديدة 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 هذه التعديلات.

إصلاح الأخطاء

  • لن يلتف 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 هذه التعديلات.

الميزات الرئيسية في الإصدار 1.0.0

يحلّ androidx.emoji2 محلّ androidx.emoji مع إمكانات إضافية:

  • تقليل حجم حزمة APK مقارنةً بحزمة androidx.emoji
  • الإعداد التلقائي
  • تمت إضافته كعنصر تابع إلى الإصدار 1.4 من AppCompat

لمزيد من المعلومات حول androidx.emoji2، يمكنك الاطّلاع على مقالة استخدام رموز الإيموجي الحديثة ومشاهدة محادثتنا في مؤتمر Android Dev Summit بعنوان عرض جميع رموز الإيموجي في تطبيقك على Android Dev.

الإصدار ‎1.0.0-rc01

‫27 أكتوبر 2021

تم طرح androidx.emoji2:emoji2-*:1.0.0-rc01. يتضمّن الإصدار 1.0.0-rc01 هذه التعديلات.

  • لم يتم إجراء أي تغييرات منذ الإصدار التجريبي 2.

‫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 قيمة EditorInfo.extras بشكل صحيح على Android 11

    • يمكن للعناصر المخصّصة التي تستخدم محرر أسلوب الإدخال (IME) ولا تصنّف EditText فرعيًا استدعاء EmojiCompat.updateEditorInfo لإعلام محرر أسلوب الإدخال (IME) بأنّها تتوافق مع معالجة EmojiCompat. (I1ea9b)

إصلاح الأخطاء

  • إصلاح الخطأ DefaultEmojiCompatConfig للبحث بشكل صحيح عن موفّر خطوط الإيموجي على الإصدارَين 19 و28 من واجهة برمجة التطبيقات يؤدي ذلك إلى إصلاح خطأ تم تقديمه في الإصدار 1.0.0‎-alpha01 من emoji2. (Ib33d8، b/197906329)

الإصدار ‎1.0.0-alpha03

‫30 حزيران (يونيو) 2021

تم طرح androidx.emoji2:emoji2-*:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.

الميزات الجديدة

هذا الإصدار هو إصدار لإصلاح الأخطاء وتحسين الثبات.

  1. تسمح أداة EmojiEditTextHelper الآن بتمرير null كـ KeyListener. يسمح ذلك بتطبيق سلوك المنصة الذي يسمح بقيم فارغة على عمليات تنفيذ EditText التي تتوافق مع الرموز التعبيرية.
  2. عند استخدام EmojiCompatInitializer، يتم تحسين تأخير بدء التشغيل الأوّلي ليتم تشغيله بعد استئناف النشاط الأول. يسمح ذلك بتشغيل التطبيق بدون أي عوائق، ويتجنّب تحميل الخط عند تشغيل التطبيق بدون عرض واجهة مستخدم. بعد تأخير قصير، ستنشئ EmojiCompat سلسلة محادثات لتحميل خط الإيموجي.
  • تتم إضافة تبعية جديدة على androidx.lifecycle:lifecycle-process من androidx.emoji2:emoji2 لتنفيذ التأخير. سيكون لهذا الإجراء تأثير ضئيل على حجم حِزم APK للتطبيقات التي تتضمّن دورة الحياة (مثل التطبيقات التي تستخدم appcompat).

تغييرات واجهة برمجة التطبيقات

  • السماح بقيمة فارغة في KeyListener في AppCompatEditText يؤدي ذلك إلى إلغاء التعليق التوضيحي غير الفارغ الذي تمت إضافته إلى AppCompatEditText في الإصدار 1.4.0-alpha01 واستعادة السلوك السابق عند تمرير قيمة فارغة. (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. هذا تغيير قد يؤدي إلى عطل في AppCompat 1.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 في جميع التطبيقات لتوفير رموز إيموجي حديثة بدءًا من المستوى 19 لواجهة برمجة التطبيقات. يتضمّن كل المحتوى الذي ينشئه المستخدمون في تطبيقك الرمز التعبيري 🎉.

تم نقل 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. يمكن استرداد الإعدادات التلقائية للنظام DefaultEmojiCompatConfig.create(context) لإجراء المزيد من الإعدادات قبل نقلها إلى EmojiCompat.init.

Emoji2 Emojipicker الإصدار 1.0

الإصدار ‎1.0.0-alpha03

‫8 مارس 2023

تم طرح androidx.emoji2:emoji2-emojipicker:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.

إصلاح الأخطاء

  • تمت إزالة الموارد غير الضرورية وتقليل حجم المكتبة بمقدار 0.3 ميغابايت تقريبًا.

الإصدار ‎1.0.0-alpha02

‫22 فبراير 2023

تم طرح androidx.emoji2:emoji2-emojipicker:1.0.0-alpha02. يتضمّن الإصدار 1.0.0-alpha02 هذه التعديلات.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة واجهة برمجة تطبيقات جديدة لعملاء Java ليتمكّنوا من تقديم رموز إيموجي حديثة. (I39d10)

إصلاح الأخطاء

  • تعديل موارد الإيموجي لتتوافق مع الإصدار 15.0 من الإيموجي (Ib4eb3)
  • عند اختيار إيموجي من النافذة المنبثقة، يتم تعديل جميع رموز الإيموجي المتطابقة إلى الإيموجي الذي تم اختياره حديثًا (باستثناء صف الإيموجي الحديث). الإعلان عن رمز الإيموجي عند النقر عليه (I892c6)
  • انتظِر إلى أن يتم تحميل emojicompat قبل عرض EmojiPickerView. (I29e03)

الإصدار ‎1.0.0-alpha01

‫25 يناير 2023

تم طرح androidx.emoji2:emoji2-emojipicker:1.0.0-alpha01. يتضمّن الإصدار 1.0.0-alpha01 هذه التعديلات.

الميزات الجديدة

  • تم طرح أداة اختيار رموز الإيموجي التي توفّر تجربة مستخدم متّسقة مع أحدث رموز الإيموجي على جميع أجهزة وتطبيقات نظام التشغيل Android OEM. توفّر هذه المكتبة أحدث رموز الإيموجي وواجهة مستخدم أداة اختيار رموز الإيموجي، بما في ذلك أشكال درجات لون البشرة وإمكانية التوافق مع رموز الإيموجي.

تغييرات واجهة برمجة التطبيقات

  • تم تقديم الفئة EmojiPickerView التي توفّر رموز إيموجي حديثة في عرض عمودي قابل للتمرير مع عنوان أفقي قابل للنقر.
  • يمكن ضبط أعمدة شبكة أداة اختيار رموز الإيموجي من خلال سمة تنسيق XML emojiGridColumns أو الدالة setEmojiGridColumns().
  • يمكن ضبط صفوف شبكة أداة اختيار رموز الإيموجي من خلال سمة XML emojiGridRows أو الدالة setEmojiGridRows().
  • يمكن ضبط أداة معالجة الإيموجي المحدّد من خلال setOnEmojiPickedListener() وسيتم إشعار أداة المعالجة عندما ينقر المستخدم على أي إيموجي.
  • يمكن توفير موفّر رموز الإيموجي الحديثة باستخدام setRecentEmojiProvider(). هذه دالة اختيارية. إذا لم يتم ضبط مقدّم الرموز التعبيرية المستخدَمة مؤخرًا، ستستخدم المكتبة مقدّم رموز تعبيرية مستخدَمة مؤخرًا تلقائيًا. يتم تحديد السلوك التلقائي على النحو التالي: 1) سيتم حفظ جميع رموز الإيموجي المحدّدة على مستوى كل تطبيق في الإعدادات المفضّلة المشتركة. ‫2) ستعرض أداة الاختيار 3 صفوف على الأكثر من الرموز التعبيرية المحدّدة، مع إزالة التكرار، بالترتيب الزمني العكسي.
  • تم تقديم الفئة EmojiViewItem التي تحتوي على الإيموجي المعروض وصيغه المختلفة.
  • تم تقديم واجهة RecentEmojiProvider يمكن تنفيذها لتوفير قائمة برموز إيموجي مستخدَمة مؤخرًا. يكون recentEmojiProvider مسؤولاً عن توفير رموز الإيموجي في فئة "المستخدمة مؤخرًا".