الإشعارات على Wear OS

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

يمكن أن تظهر الإشعارات على الساعة بطريقتين:

  1. ينشئ التطبيق المتوافق مع الأجهزة الجوّالة إشعارًا وينقل النظام تلقائيًا هذا الإشعار إلى الساعة.
  2. ينشئ تطبيق الجهاز القابل للارتداء إشعارًا.

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

راجع المثال التالي لمعرفة كيفية عرض الإشعارات. بطاقات-الإشعارات

الشكل 1. الإشعار نفسه المعروض على الهاتف والساعة.

استخدِم إحدى الفئات الفرعية NotificationCompat.Style للحصول على أفضل النتائج.

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

الإشعارات المقترَحة للأجهزة القابلة للارتداء

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

يمكنك إنشاء إشعار قابل للتوسيع بالطريقة نفسها التي تستخدمها على الأجهزة الجوّالة، وذلك باستخدام أي من فئات NotificationCompat.Style الفرعية. على سبيل المثال، يظهر الإشعار العادي الذي يستخدم NotificationCompat.MessagingStyle على النحو التالي: إشعار قابل للتوسيع

الشكل 2. مثال على إشعار "MessagingStyle" على نظام التشغيل Wear OS

يظهر في الإشعار عدة إجراءات مجمّعة في أسفل الحالة الموسّعة.

للحصول على أمثلة على NotificationCompat.BigPictureStyle وNotificationCompat.BigTextStyle وNotificationCompat.InboxStyle وNotificationCompat.MessagingStyle، يمكنك الاطّلاع على نموذج الإشعار على GitHub.

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

تجنُّب الإشعارات المكرَّرة

يتم تلقائيًا عرض الإشعارات من تطبيق الهاتف المقترن إلى أي ساعات مقترنة. وهذا خيار رائع إذا لم يكن لديك تطبيق قابل للارتداء.

في المقابل، إذا أنشأت تطبيق ساعة مستقلاً وتطبيق هاتف مصاحب، ستنشئ التطبيقات إشعارات مكرّرة.

يوفّر نظام التشغيل Wear OS طريقةً لإيقاف الإشعارات المكرَّرة باستخدام واجهات برمجة تطبيقات Bridge. للحصول على مزيد من المعلومات، اطّلِع على خيارات تجاوز حدود الإشعارات.

إضافة ميزات خاصة بالأجهزة القابلة للارتداء إلى إشعار

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

  1. يمكنك إنشاء مثيل WearableExtender، مع تحديد الخيارات الخاصة بالأجهزة القابلة للارتداء للإشعار.
  2. يمكنك إنشاء نسخة افتراضية من NotificationCompat.Builder، مع ضبط السمات المطلوبة لإشعارك على النحو الموضَّح سابقًا في هذا الدليل.
  3. عليك الاتصال بالرقم extend() ضمن الإشعار وتمريره في WearableExtender. يؤدي هذا إلى تطبيق خيارات الأجهزة القابلة للارتداء على الإشعار.
  4. يمكنك الاتصال بـ build() لإنشاء الإشعار.

ملاحظة: إذا كنت تستخدم NotificationManager من إطار العمل، لن تعمل بعض الميزات من NotificationCompat.WearableExtender، لذا احرص على استخدام NotificationCompat.

يمكنك مزامنة عمليات إغلاق الإشعارات أو إلغائها على جميع أجهزة المستخدم. لمزامنة إغلاق، استخدِم setDismissalId(). بالنسبة إلى كل إشعار، يجب ضبط معرّف فريد عالمي كسلسلة عند طلب الرمز setDismissalId(). عند إطفاء الإشعار، يتم تجاهل جميع الإشعارات الأخرى التي تحمل رقم تعريف الإغلاق نفسه على الساعة وعلى الهاتف المقترن. لاسترداد رقم تعريف الرفض، استخدِم getDismissalId().

تحديد إجراءات الأجهزة القابلة للارتداء فقط

إذا أردت تنفيذ إجراءات مختلفة على الساعة والهاتف، استخدِم WearableExtender.addAction(). بعد إضافة إجراء بهذه الطريقة، لن يعرض الجهاز القابل للارتداء أي إجراءات أخرى تمت إضافتها باستخدام NotificationCompat.Builder.addAction(). تظهر الإجراءات التي تتم إضافتها باستخدام WearableExtender.addAction() على الجهاز القابل للارتداء فقط، وليس على الهاتف.