Emoji2

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

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

لإضافة اعتمادية على 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 للحصول على مزيد من المعلومات.

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

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

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

الإصدار 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 يوليو 2022

تم طرح 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 أو إصدار أحدث من "مكوّن Android الإضافي في Gradle" (مثل الإصدار 3.3 من R8) وجميع عمليات الإنشاء عند استخدام الإصدار 8.1 أو إصدار أحدث من "مكوّن Android الإضافي في Gradle" (مثل الإصدار 8.1 من D8). ننصح العملاء الذين لا يستخدمون 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 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 هذه التعديلات.

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

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

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

تم تعديل مكتبة "أداة اختيار رموز الإيموجي" لتشمل واجهات برمجة التطبيقات الجديدة التالية:

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

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

  • إضافة واجهة برمجة تطبيقات جديدة getEmojiMatch للسماح للوحات المفاتيح بالبحث بدقة أكبر عن سلوك مطابقة الإيموجي في emojicompat
  • إيقاف hasEmojiGlyph نهائيًا، لأنّ القيمة المنطقية التي يتم إرجاعها تكون غير دقيقة عند الاختبار باستخدام خط أقدم من خط رموز الإيموجي على النظام الأساسي استبدِلها بـ "getEmojiMatch". (Ie693d)

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

  • لن يلتف Emoji2 حول مثيلات NumberKeyListener، ما يسمح بضبط اللغة حسب TextView.
  • لن يغلّف Appcompat مثيلات NumberKeyListener التي تم تمريرها إلى setKeyListener، ما يسمح لـ TextView بضبط اللغة بشكل صحيح على NumberKeyListeners. (Ibf113، b/207119921)

1

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

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

الإصدار 1.0.0-beta01 من Emoji2

‫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 لإعلام محرر أسلوب الإدخال بأنّها تتوافق مع معالجة 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.