ضبط أولوية الرسائل وإدارتها

لديك خياران لتعيين أولوية التسليم للرسائل التي تلي ذلك على Android: أولوية عادية وعالية. تسليم الرسائل ذات الأولوية العادية والرسائل ذات الأولوية العالية النحو التالي:

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

    عند الحصول على أولوية عادية في Android تطلب مزامنة بيانات الخلفية لتطبيقك، يمكنك جدولة مهمة ما باستخدام WorkManager لمعالجة هذه العملية عند توفُّر الشبكة.

  • أولوية عالية: تحاول خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" منح أولوية عالية على الفور، ما يسمح لخدمة "المراسلة عبر السحابة الإلكترونية من Firebase" بتنشيط جهاز وضع السكون عند وتشغيل بعض المعالجة المحدودة (بما في ذلك الشبكة المحدودة للغاية الوصول). يجب أن تؤدي الرسائل ذات الأولوية العالية بشكل عام إلى تفاعل من المستخدم. مع التطبيق أو إشعاراته.

التعامل مع الرسائل وخفض الأولوية في استخدامها على Android

إنّ الرسائل ذات الأولوية العالية على Android مخصّصة للرسائل ذات طبيعة حساسة وظاهرة للمستخدم. المحتوى، وينبغي أن ينتج عنها إشعارات موجَّهة للمستخدمين. إذا كانت خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" يحدد نمطًا لا تؤدي فيه الرسائل إلى ظهور إشعارات موجَّهة للمستخدمين، قد لا يتم إعطاء الأولوية لرسائلك إلى الأولوية العادية أو تفويضها. لتتم معالجتها بواسطة "خدمات Google Play".

تستخدم خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" 7 أيام لسلوك الرسالة عند تحديد ما إذا كان ينبغي إعطاء الأولوية أو الوكيل الرسائل؛ فإنها تحدد هذا القرار بشكل مستقل لكل حالة من التطبيق. استجابة للرسائل ذات الأولوية العالية، إذا كانت الإشعارات بطريقة تظهر للمستخدم، فعندئذٍ ستكون الأولوية القصوى لن تتأثر الرسائل.

تفويض الإشعارات باستخدام "خدمات Google Play"

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

تجدر الإشارة إلى أنّ رسائل الإشعارات التي يتم إرسالها عبر خادم وكيل تقدّم تغييرات في طريقة عمل الإحصاءات المتعلقة بالرسائل التي يتم استلامها:

  • من أجل التحليلات للإبلاغ عن الإشعارات التي يتم إرسالها عبر خادم وكيل، يجب أن يستخدم تطبيقك إصدار حزمة تطوير البرامج (SDK) لخدمة "المراسلة عبر السحابة الإلكترونية من Firebase". 24.0.0 أو أحدث.
  • وقد تلاحظ تأخيرات أو انخفاضات في عدد عدد الرسائل المُستلَمة مقابل عدد الرسائل التي تم تلقّيها قبل بدء استخدام خادم وكيل الإشعارات. ويرجع ذلك إلى أنّ تحليلات الإشعارات التي تم إنشاء خادم وكيل لها تكون فقط يتم الإبلاغ عنه عند بدء تشغيل التطبيق، وقد لا يتم الإبلاغ عنه على الإطلاق إذا لا يؤدي الإشعار إلى فتح التطبيق.

إنّ إنشاء خوادم وكيلة لرسائل الإشعارات بهذه الطريقة هو السلوك التلقائي للتطبيقات. يستخدمون Android Q+ والإصدار 19054000 أو إصدار أحدث من خدمات Google Play. الرسائل يتم إنشاء خادم وكيل مع الرسائل المرسلة من خلال واجهة برمجة التطبيقات HTTP v1، لكن يتم إنشاء الرسائل المرسلة من خلال Firebase وحدة التحكم أو واجهات برمجة التطبيقات القديمة لن يتم إنشاء خادم وكيل لها. لاحظ أن هذه الميزة في إصدار تجريبي حاليًا، وتخضع للتغيير.

ومع ذلك، فإننا ننصح بشدة بترك ميزة التفويض مفعَّلة للاستفادة من مزاياها في بطارية الجهاز وذاكرة الجهاز، يمكنك إيقاف هذا السلوك في أي من هذه الطرق:

  • على مستوى التطبيق: أضِف التوجيه <meta-data android:name= "delivery_metrics_exported_to_big_query_enabled" android:value="false"/> في بيان التطبيق.
  • على أساس مثيل التطبيق: على مثيل التطبيق، اضبط fun setNotificationDelegationEnabled(disable: Boolean): Task<Void!> في مسار واجهة المستخدم لتطبيقك، بناءً على حالة الاستخدام المحددة.
  • على أساس كل رسالة: اضبط مفتاح proxy على DENY في كائن AndroidNotification لطلب الإرسال.

قياس عدم أولوية الرسائل على Android

تحديد المشاكل وحلّها

  • تأكَّد من تفعيل الإشعارات في مثيل التطبيق. وإذا أوقف المستخدم إذن إرسال الإشعارات لتطبيقك، لن يتم نشر أي من إشعاراتك، ونتيجةً لذلك، لن تمنح رسائلك الأولوية. يجب التحقُّق من تفعيل الإشعارات قبل إرسال الرسائل ذات الأولوية العالية إلى مثيل التطبيق.

  • لا تتصل بالمنزل قبل نشر إشعار. ولأنّ جزءًا صغيرًا من مستخدمي أجهزة Android على شبكات ذات وقت استجابة طويل، تجنَّب فتح اتصال بخوادمك قبل عرض إشعار. يعود الاتصال بالخادم قبل نهاية قد يشكل وقت المعالجة المسموح به خطرًا على المستخدمين الذين يستخدمون شبكات ذات وقت استجابة طويل. بدلاً من ذلك، قم بتضمين محتوى الإشعار في رسالة FCM وعرضه في الحال. إذا كنت بحاجة لمزامنتها مع محتوى إضافي داخل التطبيق على Android، يمكنك جدولة مهمة باستخدام WorkManager للتعامل مع ذلك في الخلفية.