تتيح لك ميزة Remote Config في الوقت الفعلي تلقّي مفاتيح وقيم المَعلمات المعدَّلة فور نشرها على الخادم. يتيح لك ذلك تعديل أي نوع من سمات التطبيق التي يتم التحكّم فيها باستخدام قيمة مَعلمة Remote Config بسرعة. من خلال ميزة "تعديلات Remote Config في الوقت الفعلي"، يمكنك إجراء ما يلي:
- يمكنك تقليل المخاطر من خلال طرح الميزات بشكل تدريجي للمستخدمين المستهدَفين، و إجراء عملية التراجع في حالات الطوارئ إذا لزم الأمر.
- يمكنك زيادة تفاعل المستخدمين من خلال تخصيص تجاربهم بسرعة أثناء استخدامهم التطبيق. على سبيل المثال، يمكنك تعديل إعلانات البانر وتقديم حوافز ل المستخدمين الذين يتطابقون مع خصائص Google Analytics مستخدمين معيّنة أو ضبط صعوبة اللعبة ديناميكيًا للمجموعات النموذجية من اللاعبين.
- تقليل التبعيات في عملية الإنشاء وزيادة إنتاجية المطوّرين: استخدِم مَعلمات Remote Config كعلامات ميزات لعرض الوظائف أمام فِرق التطوير والاختبار، مع إبقائها مخفية عن المستخدمين في مرحلة الإصدار العلني.
للمزيد من المعلومات حول طرق استخدام Remote Config، يمكنك الاطّلاع على مقالة ما هي الإجراءات التي يمكنك اتّخاذها باستخدام Remote Config؟.
في هذا الدليل، ستتعرّف على ما يلي:
- اطّلِع على مزيد من المعلومات عن العلاقة بين العميل والخادم التي تتيح تعديلات في الوقت الفعلي.
- فهم آلية عمل الوظائف في الوقت الفعلي في حزمة SDK
- تعرَّف على كيفية استخدام التعديلات في الوقت الفعلي للحفاظ على حداثة إعدادات تطبيقك.
اتصال العميل بالخادم في الوقت الفعلي
عند تنفيذ Remote Config في الوقت الفعلي في تطبيقك، يمكنك إنشاء معالج إعلامات في الوقت الفعلي يفتح اتصال HTTP بالخلفية في Remote Config. يتضمّن الطلب إصدار الإعدادات المخزّن مؤقتًا حاليًا على الجهاز. يستخدم خادم Remote Config في الوقت الفعلي رسالة إلغاء صلاحية ل إعلام التطبيق عند الحاجة إلى جلب إصدار أحدث من الإعدادات من جهة الخادم.
إذا كان الخادم يستخدم إصدارًا أحدث، يرسل إشارة الإبطال على الفور.
وإذا لم يكن لديه إصدار أحدث، يحافظ على الاتصال مفتوحًا وينتظر إلى أن يتم نشر إصدار على الخادم. عندما يتلقّى حِزم تطوير البرامج (SDK) للعملاء إشارة إبطال، يتم جلبها تلقائيًا، ثم يتم استدعاء دالة الاستدعاء المسجّلة للمستمع عند فتح اتصال المستمع. يشبه هذا الاسترجاع طلب استرجاع
الذي يمكنك إجراؤه باستخدام حزمة SDK، ولكنه يتجاوز أي إعدادات ذاكرة تخزين مؤقت أو
minimumFetchInterval
. يتم الحفاظ على اتصال الخادم بالعملاء أثناء
عمل التطبيق في المقدّمة.
وبما أنّ الاتصال بين العميل والخادم يتم من خلال بروتوكول HTTP، لا يتطلّب ذلك أيّ تبعيات على مكتبات أخرى.
الاستماع إلى آخر الأخبار
تكمل التحديثات في الوقت الفعلي مكالمات Remote Config fetch
. ننصحك
باستدعاء fetch عند بدء تطبيقك (أو في وقت ما خلال دورة حياة تطبيقك)
والاستماع إلى آخر تعديلات Remote Config في الوقت الفعلي أثناء جلسة المستخدم ل
ضمان حصولك على أحدث القيم فور نشرها على
الخادم.
للاطّلاع على آخر الأخبار، يمكنك الاتصال بـ
addOnConfigUpdateListener
،
وتنفيذ طلب استدعاء يتمّ تشغيله عند توفّر تحديث Remote Config
في التطبيق. وخلف الكواليس، يبدأ هذا الطلب بالاستماع إلى آخر الأخبار
من خادم Remote Config. لمعرفة مزيد من المعلومات عن علاقته العميل بالخادم، يُرجى الاطّلاع على القسم السابق.
غالبًا ما يكون الإجراء المُعاد الاتصال به مكانًا جيدًا لاستخدام activate
لتوفير مَعلمات الإعداد المعدَّلة
لتطبيقك. اطّلِع على
استراتيجيات تحميل Remote Config في Firebase
للاطّلاع على استراتيجيات إضافية لتفعيل قيم المَعلمات عند استخدام
Remote Config في الوقت الفعلي.
تفعيل قِيم المَعلمات بشكل انتقائي
عند الاتصال بالرقم:
addOnConfigUpdateListener
،
يمكنك انتظار التغيير وتفعيله.
onUpdate
عند جلب إصدار جديد من النموذج
تلقائيًا وعند إجراء تغييرات على
قيم المَعلمات المفعّلة حاليًا في التطبيق.
يتمّ استدعاء وظائف ردّ الاتصال هذه باستخدام المَعلمة configUpdate
. يحتويconfigUpdate
على
updatedKeys
،
وهي مجموعة مفاتيح المَعلمات التي تم تغييرها والتي بدأت عملية التحديث في الوقت الفعلي، وتشمل ما يلي:
- مفاتيح المَعلمات التي تمت إضافتها أو إزالتها
- مفاتيح المَعلمات التي تغيّرت قيمها
- مفاتيح المَعلمات التي تغيّرت بياناتها الوصفية (على سبيل المثال، Remote Config معلومات التخصيص)
- مفاتيح المَعلمات التي تغيّر مصدر قيمتها (على سبيل المثال، تعديل قيمة تلقائية داخل التطبيق إلى قيمة من جهة الخادم)
إذا كنت تستخدِم مستمعًا في الوقت الفعلي في عرض معيّن داخل تطبيقك، يمكنك التحقّق مما إذا كانت المَعلمات ذات الصلة بهذا العرض قد تغيّرت قبل التفعيل.
في بعض الأحيان، لا يؤدي استرجاع البيانات (إما عند استدعاء طريقة fetch
أو باستخدام
Remote Config في الوقت الفعلي) إلى تعديل البيانات لدى العميل. في
هذه الحالات، لن يتم استدعاء الأسلوب أو اكتمال الإجراء
onUpdate
.
إضافة مستمعين وإزالتهم
addOnConfigUpdateListener
هي نقطة الدخول الرئيسية إلى Remote Config في الوقت الفعلي. يؤدي استدعاء أداة معالجة الأحداث هذه للمرة الأولى في دورة نشاط تطبيقك إلى فتح الاتصال بالخلفية.
تعيد المكالمات اللاحقة استخدام الاتصال نفسه، ما يؤدي إلى تعدد إرسال رسائل الإبطال описанة في اتصال العميل بالخادم في الوقت الفعلي.
تُعرِض المكالمة "تسجيل مستمع"، الذي يحتوي على طريقة تُسمى
remove
.
لإيقاف الاستماع، يمكنك تخزين المرجع الخاص بتسجيل المستمع. اتصل بالرقم
remove
لإيقاف التسجيل. إذا كان المُستمع الوحيد المسجَّل، يؤدي استدعاء remove
إلى إغلاق الاتصال المباشر بالخادم.
الخطوات التالية
اطّلِع على مقالة البدء في استخدام Firebase Remote Config لضبط Remote Config والبدء في الاستماع إلى آخر الأخبار في الوقت الفعلي.