الرسائل غير القابلة للتصغير والتصغير

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

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

الرسالة القابلة للطي هي رسالة قد يتم استبدالها برسالة جديدة إذا لم يتم تسليمها بعد إلى الجهاز.

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

لتصنيف رسالة بأنّها قابلة للطي على Android، عليك تضمين المَعلمة collapse_key في حمولة الرسالة. بشكلٍ تلقائي، يكون مفتاح الطيّ هو اسم حزمة التطبيق المسجَّل في الـ Firebase console. يمكن للخادم FCM تخزين أربع رسائل مختلفة قابلة للطي في الوقت نفسه لكل جهاز، ولكل منها مفتاح طيّ مختلف. في حال تجاوز هذا العدد، FCM يحتفظ بأربعة مفاتيح طيّ فقط، بدون تحديد العوامل التي يتم على أساسها الاحتفاظ بالمفاتيح.

تكون رسائل المواضيع التي لا تتضمّن حمولة قابلة للطي بشكلٍ تلقائي. تكون رسائل الإشعارات قابلة للطي دائمًا وسيتم تجاهل المَعلمة collapse_key.

ما هو الخيار الذي يجب استخدامه؟

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

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