يُعد تلقّي الرسائل بشكل موثوق أهم ميزة في أي تجربة مراسلة على Android. من المهم أيضًا تنفيذ المراسلة مع مراعاة حالة النظام وعمر البطارية. يرشدك هذا المستند إلى الاستراتيجيات والأدوات الأساسية لضمان تلقّي تطبيق Android الخاص بك الرسائل باستمرار وبكفاءة وموثوقية.
آليات تسليم الرسائل
يعتمد أفضل أسلوب للمراسلة الموثوقة على المتطلبات المحدّدة لتطبيقك. يجب مراعاة عوامل مثل:
- الاحتياجات الحالية في الوقت الفعلي
- معدّل تكرار الرسائل
- قيود البطارية
المراسلة الفورية في المقدّمة
عندما يكون تطبيقك في المقدّمة، يتوقّع المستخدم عادةً الحصول على قدر كبير من المعلومات، ويريد معرفة ما يلي:
- هل الشخص الذي يتم إرسال الرسالة إليه متواجد على جهازه؟
- هل يكتبون؟
- هل قرأوا الرسالة؟
الطريقة النموذجية لإتاحة تبادل البيانات في الوقت الفعلي هي استخدام بروتوكول بين العميل والخادم، مثل WebSockets. تتيح WebSockets إجراء اتصالات مستمرة وثنائية الاتجاه بين تطبيقك والخادم. تتضمّن مكتبة OKHTTP تنفيذًا لبروتوكول WebSocket يمكنك استخدامه في برنامج Android.
توفّر قاعدة بيانات Firebase في الوقت الفعلي خادمًا خلفيًا مُعدًّا مسبقًا وواجهة أمامية للعميل يمكنها التعامل مع هذا النوع من التواصل نيابةً عنك. تستخدم هذه المكتبة WebSockets داخليًا للتواصل في الوقت الفعلي بين العميل والخادم.
المراسلة الفورية في الخلفية
عندما لا يكون تطبيقك في المقدّمة، من المهم تجنُّب تنفيذ إجراءات تؤثر سلبًا في حالة النظام وعمر البطارية. وبما أنّه لا يزال من المهم تسليم إشعارات الرسائل بشكل موثوق، ننصحك بالاستفادة من مراسلة Firebase السحابية (FCM).
مراسلة Firebase السحابية هي حل للمراسلة من عدّة منصات يرسل الإشعارات ورسائل البيانات بكفاءة إلى أجهزة Android (وغيرها). تستفيد هذه الخدمة من طبقة النقل في Android (ATL) للأجهزة التي تتضمّن خدمات Google، ما يتيح إرسال إشعارات إلى تطبيقك بشأن التغييرات عندما يتوقف عن العمل. يعتمد توقيت تسليم الرسالة على حالة الجهاز وأولوية الرسالة وما إذا كان تطبيقك يخضع لقيود بسبب وضع السكون أو وضع الاستعداد للتطبيق.
- كيفية دمج مراسلة Firebase السحابية في مشروع Android
- استكشاف واجهة برمجة التطبيقات (الخادم) في "المراسلة عبر السحابة الإلكترونية من Firebase" وإمكاناتها
تحسين موثوقية تسليم الرسائل
لتعزيز فعالية إيصال رسالتك، ننصحك باتّباع الاستراتيجيات التالية:
- استخدِم
WorkManagerلتنشيط تطبيقك بشكل دوري والتحقّق من الرسائل الجديدة عندما يكون الجهاز متصلاً بالشبكة، وعندما يكون الجهاز متصلاً بالشاحن (يفضّل ذلك). - يمكنك الحصول على إحصاءات حول عملية تسليم الرسائل في خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" باستخدام أدوات مثل وحدة تحكّم Firebase ومقاييس تسليم حزمة تطوير البرامج (SDK) لنظام التشغيل Android من FCM Data API.
- استخدِم آليات التسجيل وأدوات مثل Firebase Crashlytics لمراقبة المشاكل المتعلّقة بتسليم الرسائل وتحديدها وحلّها.