قائمة التحقّق الخاصة بإطلاق 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 بحيث يمكنك تحليل بياناتك باستخدام لغة الاستعلامات البنيوية (SQL) في BigQuery أو تصدير البيانات لاستخدامها مع أدواتك الخاصة.

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

  • مراجعة إعدادات دوران (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 Storage

Crashlytics

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

  • ضع في اعتبارك جارٍ تفعيل تصدير بيانات Crashlytics إلى BigQuery بحيث يمكنك تحليل بياناتك باستخدام لغة الاستعلامات البنيوية (SQL) في BigQuery أو تصدير البيانات لاستخدامها مع أدواتك الخاصة.

  • (نظاما التشغيل 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 بحيث يمكنك تحليل بياناتك باستخدام لغة الاستعلامات البنيوية (SQL) في BigQuery أو تصدير البيانات لاستخدامها مع أدواتك الخاصة.

Realtime Database

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

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

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

Remote Config

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

Vertex AI in Firebase