إشعارات المحادثات وأداوتها

يتيح نظام التشغيل Android 11 تخصيص سلوك إشعارات المحادثات وموضعها في لوحة الإشعارات حسب الأولوية ومستوى التنبيه، ما يسمح بوضع علامة "مهمة" على المحادثات وإطلاق فقاعات خاصة بالمحادثات في مساحة المحادثات.

بالاستناد إلى ميزات Android 11 هذه، يقدّم Android 12 ميزتَين جديدتَين ضمن "المحادثات":

  • تتيح ميزة "المحادثات الحديثة" في "الإعدادات" للمستخدمين تخصيص سلوك الإشعارات للمحادثات الحديثة بدون انتظار تلقّي إشعار.

  • تتيح ميزة "تطبيق المحادثات المصغّر" للمستخدمين فتح المحادثات بسهولة على الشاشة الرئيسية، ما يتيح لهم الاطّلاع بسرعة على المحادثات الأخيرة.

يوضّح هذا المستند جوانب التنفيذ والتخصيص والتحقّق من صحة إشعارات المحادثات وwidgets.

نظرة عامة على إشعارات المحادثات

يقدّم نظام التشغيل Android 11 عنصرًا أساسيًا جديدًا في النظام، وهو المحادثة، ويتم تمثيله من خلال كائن اختصار المشاركة الحالي (الذي تم طرحه مع Android 9).

يمكن استخدام عنصر Conversations الأساسي على النحو التالي:

  • لمشاركة بيانات "المحادثات" بين التطبيقات على مستوى النظام من خلال ورقة المشاركة (المتوفرة حاليًا في Android 10).

  • الفقاعات الخاصة بالقيادة(الاختصارات في الإصدار 11 من نظام التشغيل Android) راجِع الشكل 1.

  • للمشاركة في مساحة "المحادثة" الجديدة في أعلى قائمة الإشعارات (تم تنفيذها في نظام التشغيل Android 11). راجِع الشكل 2.

  • لإنشاء تطبيقات مصغّرة للمحادثات (تم تنفيذها في Android 12)

    conv_bubbles

    الشكل 1: إطلاق الإشعار كفقاعة من لوحة الإشعارات

    conv_notification

    الشكل 2: مساحة المحادثة في أعلى مركز الإشعارات

بالإضافة إلى الربط بالاختصار الذي يمثّل المحادثة، يستخدم الإشعار أيضًا MessagingStyle لتضمين آخر رسالة في المحادثة ضمن مساحة "المحادثة".

على شركاء "خدمات Google للأجهزة الجوّالة" تنفيذ ما يلي:

  • مساحة "المحادثات" الجديدة كقسم منفصل في أعلى لوحة الإشعارات
  • نمط إشعارات يتيح استخدام نمط الفقاعة الخاص بالمحادثة ويدعمه.

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

اطّلِع على التنفيذ المرجعي التالي في قسمَي SystemUI وPeopleService ضمن مشروع AOSP:

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

التحقُّق

للتأكّد من أنّ إصدار الميزة يعمل على النحو المطلوب، تحقَّق من ما يلي:

  1. تظهر إشعارات التطبيقات التي تتوافق تمامًا مع Conversation API في القسم الجديد، ويمكن تخصيص هذه الإشعارات حسب المحادثة بدلاً من تخصيصها حسب NotificationChannel العام.

  2. تعمل فقاعات المحادثات المحدّدة.

للتحقّق من صحة التنفيذ، استخدِم الاختبارات التالية في حزمة الإشعارات:

  • اختبارات CTS

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • اختبارات CTS Verifier

    cts/apps/CtsVerifier/src/com/android/cts/verifier/notifications/
    
    

نظرة عامة على أدوات المحادثة

في نظام التشغيل Android 12، تستند ميزة "أداة المحادثة" إلى تمثيلات المحادثات التي تم إنشاؤها في نظام التشغيل Android 11 (كما هو موضّح في القسم السابق) من خلال السماح للتطبيقات بتقديم حالة لتلك المحادثات التي يتم عرضها في "أدوات المحادثة".

conv_widgets

الشكل 3: المحادثات المعروضة في "تطبيقات المحادثات المصغّرة"

تعزّز ميزة "تطبيق المحادثة المصغّر" في Android 12 التواصل من خلال السماح للمستخدمين بفتح المحادثات بسهولة على الشاشة الرئيسية. الأدوات هي اختصارات محسّنة تتيح للمستخدمين العودة بكفاءة إلى محادثاتهم مع عرض مقتطفات من حالات المحادثات.

على الشريك تنفيذ ما يلي:

  1. تطبيق مصغّر يوفّره SystemUI
  2. خطوات لإضافة هذه التطبيقات المصغّرة من شاشة اختيار التطبيقات المصغّرة
  3. إتاحة تغيير حجم التطبيق المصغّر على النحو التالي:

يُرجى الانتباه إلى التبعيات التالية عند تنفيذ "أدوات المحادثة":

  • لا يحتاج الشريك إلى تعديل أو تنفيذ رمز HAL/برنامج التشغيل/نواة النظام.
  • يتم استخدام واجهة برمجة التطبيقات Status API التي تتيح للتطبيقات إضافة معلومات الحالة أو معلومات التوفّر إلى محادثة والأداة المرتبطة بها.
  • وتكون العملية هي نفسها في كلّ من عمليات تنفيذ الجهاز الجديد وعمليات تنفيذ الترقية.
  • تعتمد ميزة "أدوات المحادثة" على ميزة جديدة سيتم إطلاقها في نظام التشغيل Android 12، وهي تخزّن مؤقتًا المحادثات التي تم الاطّلاع عليها مؤخرًا (من الإشعارات، على سبيل المثال). تتيح الميزة الأخيرة توسيع قائمة المحادثات التي يمكن للمستخدم إضافتها إلى شاشته الرئيسية.

راجِع نموذج التنفيذ المرجعي التالي في ملفات SystemUI وLauncher3:

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

التخصيص

لا يمكن تفعيل ميزة "أدوات المحادثة" أو إيقافها، ولكن يمكن للشريك تغيير تنسيقات نماذج الأدوات طالما تم استيفاء متطلبات "خدمات Google للأجهزة الجوّالة".

التحقُّق

للتأكّد من أنّ إصدار الميزة يعمل على النحو المطلوب، تحقَّق من ما يلي:

  1. عند الضغط مع الاستمرار على "مشغّل التطبيقات"، يمكن إضافة تطبيق مصغّر جديد للمحادثة من خلال أداة اختيار التطبيقات المصغّرة. راجِع الشكل 4 للاطّلاع على واجهة مستخدم "أداة اختيار التطبيقات المصغّرة":

    widget_picker

    الشكل 4: واجهة مستخدم أداة اختيار التطبيقات المصغّرة لإضافة تطبيق مصغّر جديد للمحادثات

  2. عند إرسال إشعارات إلى الجهاز من المحادثة المحدّدة، يتم تعديل الأداة لتعكس هذه الإشعارات.

  3. عند تطبيق الحالات على تلك المحادثة باستخدام واجهة برمجة التطبيقات ConversationStatus، تعرض الأداة تلك الحالات.

  4. يمكن للمستخدمين تغيير حجم التطبيقات المصغّرة، ويمكن أن تغيّر التطبيقات المصغّرة أحجامها استنادًا إلى مشغّل التطبيقات الحالي. يجب أن تتوافق تخطيطات التطبيقات المصغّرة مع أحجام مختلفة من مشغّل التطبيقات على الأجهزة المختلفة وعند تغيير حجم التطبيق المصغّر.

للتحقّق من صحة التنفيذ، استخدِم الاختبارات التالية في حزمة الإشعارات:

  • اختبارات CTS (PeopleManagerTest) لمساحات العرض الخاصة بواجهة برمجة التطبيقات

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • الاختبارات اليدوية لمتطلبات "خدمات Google Play" - المحادثات