قائمة التحقّق الخاصة بإطلاق Firebase

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

أفضل الممارسات العامة لإصدار التطبيقات

  • تأكَّد من اختبار جميع التغييرات في Firebase Local Emulator Suite (للمنتجات المتوافقة) قبل نشرها في قناة الإصدار العلني. يمكن أن يساعد الاختبار الشامل في منع حدوث أخطاء باهظة التكلفة.

  • ابدأ فرض Firebase App Check لكل خدمة تتيح ذلك. يساعد App Check في التأكّد من أنّه لا يمكن إلا لتطبيقاتك الفعلية الوصول إلى خدماتك ومراجعك في الخلفية.

  • راجِع قائمة التحقّق العامة للأمان في Firebase.

  • استخدِم ميزة Firebase Remote Config عمليات الطرح لطرح ميزات جديدة وتحديثات لتطبيقك بأمان وبصورة تدريجية.

  • ننصحك بإعداد Firebase Crashlytics إذا لم يسبق لك ذلك. هذا التقرير هو أداة خفيفة الوزن لتسجيل الأعطال في الوقت الفعلي تساعدك في تتبُّع مشاكل ثبات التطبيق التي تؤثر سلبًا في جودته وتحديد أولوياتها وحلّها.

التعرّف على حدود خطة الأسعار وضبط تنبيهات الميزانية

  • تأكَّد من عدم بلوغ حدود الاستخدام والحصص بعد الانتقال إلى مرحلة الإنتاج، خاصةً إذا كنت تستخدم خطة Spark المجانية. ننصحك بالترقية إلى خطة أسعار Blaze المستندة إلى الدفع عند الاستخدام.

  • إعداد تنبيهات بشأن الميزانية لمشروعك

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

    • ننصحك بإعداد التنبيهات والإجراءات المتقدّمة، مثل الدوال التي ستوقِف الفوترة استجابةً للتنبيهات.

  • يمكنك تتبُّع معدّل الاستخدام في لوحات البيانات الخاصة بالمنتجات أو في لوحة بيانات الاستخدام والفوترة في وحدة تحكّم Firebase.

التأكّد من اتّباع أفضل الممارسات في مشاريعك وتطبيقاتك على Firebase

سواء كنت مطوّرًا فرديًا أو فريقًا على مستوى مؤسسة، من المهم التأكّد من حماية مشاريعك وتطبيقاتك ومواردك على Firebase، وتأمينها، وإمكانية تطويرها وفقًا للتغييرات في فريقك.

من المفيد تذكُّر أنّ مشروع Firebase هو في الواقع مجرد مشروع Google Cloud تم تفعيل خدمات Firebase وإعداداتها له. وهذا يعني أنّ العديد من أفضل الممارسات التي تنصح بها Google Cloud تنطبق أيضًا على Firebase.

  • استخدِم مشاريع مختلفة على Firebase لتطوير التطبيقات واختبارها وإتاحتها للجمهور.

    حاوِل الحدّ من التعرّض غير المتوقّع للمشروع المرتبط بتطبيقك المخصّص للإصدار العلني. اطّلِع على مزيد من المعلومات عن إعداد سير عمل التطوير.

  • عليك حماية مشاريعك المهمة، وخصوصًا المشروع المرتبط بتطبيقك العلني.

    • استخدِم روابط المشاريع للحماية من حذف المشروع عن طريق الخطأ.

    • طبِّق علامة"Prod" في وحدة تحكّم Firebase لتسهيل تحديد بيئة الإصدار العلني.

  • ننصحك بإعداد Google Cloud مؤسسة وإضافة مشاريعك على Firebase إليها إذا لم يسبق لك ذلك.

  • أضِف أكثر من مالك واحد إلى مشاريعك على Firebase، خاصةً إذا كان مشروعك ليس تابعًا لمؤسسة Google Cloud. اطّلِع على مزيد من المعلومات حول حالات تعيين مالكي المشاريع وكيفية ذلك لمشروع على Firebase.

  • أضِف أعضاء المشروع (المعروفين أيضًا باسم "المبدأ") كمجموعات Google بدلاً من إضافتهم بشكلٍ فردي.

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

  • يمكنك منح كل عضو في المشروع (المعروف أيضًا باسم "المبدأ") المستوى المناسب من إذن الوصول إلى مشاريعك ومواردك في Firebase. اطّلِع على مزيد من المعلومات في مقالة إدارة الوصول إلى المشروع باستخدام "إدارة الهوية وإمكانية الوصول في Firebase".

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

    يمكنك أيضًا اختياريًا تخصيص "جهات الاتصال الأساسية" لمشروعك إذا كنت تريد أن يتلقّى أعضاء مشروع معيّنين أو إضافيين إشعارات. ويُعدّ ذلك مفيدًا بشكل خاص لضمان أن يتلقّى أكثر من مالكي المشروع إشعارات بشأن التغييرات المتعلقة بالفوترة والشؤون القانونية والمنتجات.

  • حصر مفاتيح واجهة برمجة تطبيقات Firebase بواجهات برمجة التطبيقات التي يجب أن تكون مُدرَجة في قائمة مفاتيح واجهة برمجة التطبيقات المسموح بها يمكنك أيضًا الاطّلاع على معلومات عن مفاتيح واجهة برمجة التطبيقات في قائمة التحقّق من أمان Firebase.

تجهيز خدمات معيّنة مستخدَمة في تطبيقك

قد يكون لكل منتج وخدمة مستخدَمَين في تطبيقك اعتبارات محدّدة عند استخدامهما في قناة الإصدار العلني.

Google Analytics

  • حدِّد شروط الجمهور ل Google Analytics لبدء جمع بيانات الإحصاءات بدءًا من إطلاق تطبيقك.

  • ننصحك بتفعيل تصدير بيانات Google Analytics إلى BigQuery لكي تتمكّن من تحليل بياناتك باستخدام BigQuery SQL أو تصدير data لاستخدامها مع أدواتك الخاصة.

  • حصر خصائص المستخدِمين بالمعلومات التي ستكون ملائمة لدورة حياة تطبيقك بالكامل: هناك حدّ أقصى لعدد الخصائص التي يمكنك إنشاؤها، ولا يمكن أرشفة هذه الخصائص.

  • راجِع إعدادات أدوار Google Analytics لحسابات ومواقع Google Analytics. تتم إدارة هذه الأذونات بشكل منفصل عن أذونات ودور إدارة الهوية وإمكانية الوصول في مشروع Firebase.

  • تأكَّد من صحة رقم تعريف App Store ورقم تعريف الفريق (إذا لزم الأمر) في إعدادات المشروع في وحدة تحكّم Firebase.

App Check

  • تأكَّد من صحة رقم تعريف الفريق في إعدادات المشروع في وحدة تحكّم Firebase.

  • ابدأ فرض Firebase App Check في كل خدمة تتيح ذلك إذا لم يسبق لك ذلك. يساعد App Check في التأكّد من أنّه لا يمكن إلا لتطبيقاتك الفعلية الوصول إلى خدماتك ومراجعك في الخلفية.

Authentication

  • أوقِف أي مزوّدين لا تستخدمهم (خاصةً المصادقة المجهولة الهوية).

  • إذا كان تطبيقك يستخدم ميزة "تسجيل الدخول باستخدام حساب Google"، خصِّص شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth.

  • تخصيص نطاقك ومُرسِلك للخدمة Authentication لإرسال الرسائل الإلكترونية

  • إذا كنت تستخدم خدمات التحقّق من الهوية عبر الرسائل القصيرة في Identity Platform، ابدأ بفرض Firebase App Check واضبط سياسة منطقة الرسائل القصيرة لحماية تطبيقك من إساءة استخدام الرسائل القصيرة.

  • تنفيذ معالجة الأخطاء على منصات Apple لمعالجة أخطاء Authentication الشائعة

  • أضِف تجزئة SHA-1 للإصدار لشهادة توقيع تطبيقك في إعدادات المشروع في وحدة تحكّم Firebase. يجب استخدام تجزئة SHA-1 إذا كان تطبيقك يستخدم تسجيل الدخول باستخدام رقم الهاتف أو ميزة "تسجيل الدخول باستخدام حساب Google" (التي تتطلّب استخدام عميل OAuth).

  • أضِف عناصر التحكّم في الوصول إلى نطاقاتك لمنع الاستخدام غير المصرَّح به. على وجه التحديد، عليك السماح بالوصول إلى نطاق الإصدار العلني في قسم Authentication من وحدة تحكّم Firebase (هذا الإجراء مهم بشكل خاص إذا كنت تستخدم منتجات تعتمد على Firebase Security Rules).

Cloud Firestore

Cloud Messaging

  • ننصحك بتفعيل تصدير بيانات Cloud Messaging إلى BigQuery لكي تتمكّن من تحليل بياناتك باستخدام BigQuery SQL أو تصدير البيانات لاستخدامها مع أدواتك الخاصة.

  • حمِّل مفتاح مصادقة APNS لتطبيق Cloud Messaging على تطبيقات Apple في وحدة تحكّم Firebase. في حال استخدام شهادات APNS، تأكَّد من تحميل شهادة APNS لإصدار التطبيق العلني.

Cloud Storage

Crashlytics

  • تأكَّد من أنّ كل عضو في المشروع المعني (المعروف أيضًا باسم "المبدأ") يضبط إعداداته المفضّلة لتلقّي تنبيهات بشأن Crashlytics أو حالة المشروع (مثل التغييرات في خطة الفوترة أو حدود الحصة). اطّلِع على مزيد من المعلومات في مقالة تلقّي تنبيهات Firebase.

  • ننصحك بتفعيل تصدير بيانات Crashlytics إلى BigQuery لكي تتمكّن من تحليل بياناتك باستخدام BigQuery SQL أو تصدير data لاستخدامها مع أدواتك الخاصة.

  • (الإصدارات المتوافقة مع Android وiOS فقط) ننصحك بتفعيل مساعدة الذكاء الاصطناعي في Crashlytics للمساعدة في تسريع الوقت الذي تستغرقه لفهم سبب حدوث عطل ومعرفة الإجراءات التي يجب اتّخاذها بشأنه.

  • حمِّل ملف dSYM لإصدارات الإصدار لاستخدامه في Crashlytics. تأكَّد من أنّ Xcode يمكنه معالجة ملفات dSYM تلقائيًا وتحميل الملفات.

  • حمِّل ملف ربط ProGuard لإصدارات الإصدارات العلنية لاستخدامها في Crashlytics. يمكن إجراء عملية التحميل باستخدام Firebase CLI.

  • اربط Firebase بمنصّة Google Play للحصول على عرض أكثر تفصيلاً لحالة تطبيقك المتوافق مع Android. على سبيل المثال، يمكنك فلترة تقارير أعطال تطبيقك حسب Google Play المسار، ما يتيح لك تركيز لوحة البيانات بشكل أفضل على إصدارات معيّنة.

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

Firebase ML

Performance Monitoring

  • تأكَّد من أنّ كل عضو في المشروع المعني (المعروف أيضًا باسم "المبدأ") يضبط إعداداته المفضّلة لتلقّي تنبيهات بشأن Performance Monitoring أو حالة المشروع (مثل تغييرات خطة الفوترة أو حدود الحصة). اطّلِع على مزيد من المعلومات في مقالة تلقّي تنبيهات Firebase.

  • ننصحك بتفعيل تصدير بيانات Performance Monitoring إلى BigQuery لكي تتمكّن من تحليل بياناتك باستخدام BigQuery SQL أو تصدير data لاستخدامها مع أدواتك الخاصة.

Realtime Database

  • اضبط إعدادات Realtime Database Security Rules لمنع الوصول غير المقصود إلى البيانات.

  • تأكَّد من أنّك مستعد للتوسّع. توفّر Realtime Database حصة تلقائية كبيرة بما يكفي لمعظم التطبيقات، ولكن قد تحتاج بعض التطبيقات إلى مساحة تخزين إضافية.

  • ضبط قواعد Proguard للعمل مع Realtime Database

Remote Config

  • تأكَّد من أنّ أي قواعد Remote Config تجريبية لن تؤثّر في مستخدمي الإصدار، وأنّه يتم توزيع الإعدادات التلقائية المناسبة على الخادم وداخل التطبيق.

Vertex AI in Firebase