فهم Firebase لنظام Android

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

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

المكوّن الإضافي مساعِد Firebase لاستوديو Android

‫مساعِد Firebase هو مكوّن إضافي لاستوديو Android يسجِّل تطبيقك على Android في مشروع Firebase ويضيف ملفات الإعداد والمكوّنات الإضافية والاعتمادات اللازمة لمنصة Firebase إلى مشروع Android، وكل ذلك من داخل استوديو Android.

اتّبِع التعليمات الواردة في صفحة البدء على Android لاستخدام مساعِد Firebase. تأكَّد من استخدام أحدث إصدارَين من استوديو Android ومساعِد Firebase (انتقِل إلى ملف > التحقّق من وجود تحديثات).

عند اختيار منتجات معيّنة من Firebase لإضافتها إلى تطبيقك، يُعلن Firebase Assistant تلقائيًا عن الاعتمادات المطلوبة في ملف app/build.gradle. يُرجى العِلم أنّه إذا أردت استخدام الـ Firebase Android BoM (ننصحك بذلك)، عليك تعديل الاعتمادات في ملف Gradle للوحدة (على مستوى التطبيق) (عادةً ما يكون app/build.gradle) لاستيراد منصة BoM. عليك أيضًا إزالة الإصدارات من كل سطر من أسطر الاعتماد على مكتبة Firebase.

بالإضافة إلى ذلك، لاستخدام بعض منتجات Firebase، عليك تفعيل واجهات برمجة التطبيقات أو توفير الموارد خارج استوديو Android. تصف التعليمات الخاصة بكل منتج في مساعِد Firebase أي إجراءات إضافية عليك اتّخاذها. على سبيل المثال، لاستخدام Cloud Firestore، عليك إعداد قاعدة البيانات والقواعد في الـ Firebase console.

خدمات Google: المكوّن الإضافي وملف الإعداد

كجزء من إضافة Firebase إلى مشروع Android الخاص بك، عليك إضافة الـ google-services والمكوّن الإضافي وملف إعداد google-services.json إلى مشروعك.

إذا أضفت Firebase إلى مشروع Android الخاص بك من خلال وحدة تحكّم Firebaseأو Management REST APIأو Firebase CLI، عليك إضافة المكوّن الإضافي وملف الإعداد إلى مشروعك يدويًا. ومع ذلك، إذا كنت تستخدم مساعِد Firebase، يتم تنفيذ هذه المهام تلقائيًا أثناء الإعداد.

انتقِل إلى مستندات Android للتعرّف على كيفية عمل المكوّن الإضافي وملف الإعداد لخدمات Google معًا.

Firebase Android BoM (Bill of Materials)

تتيح لك Firebase Android BoM (Bill of Materials) إدارة جميع إصدارات مكتبات Firebase من خلال تحديد إصدار واحد فقط، وهو إصدار BoM

عند استخدام Firebase BoM في تطبيقك، تجلب BoM تلقائيًا إصدارات المكتبات الفردية المطابقة لإصدار BoM. ستكون جميع إصدارات المكتبات الفردية متوافقة. عند تعديل إصدار BoM's في تطبيقك، سيتم تعديل جميع مكتبات Firebase التي تستخدمها في تطبيقك إلى الإصدارات المطابقة لإصدار BoM هذا.

لمعرفة إصدارات مكتبات Firebase المطابقة لإصدار معيّن من BoM ، اطّلِع على ملاحظات الإصدار لإصدار BoM هذا. إذا كنت بحاجة إلى مقارنة إصدارات المكتبات المطابقة لإصدار معيّن من BoM بإصدار آخر من BoM، استخدِم الـ أداة المقارنة أدناه.

مزيد من المعلومات حول دعم Gradle لمنصات BoM.

إليك كيفية استخدام Firebase Android BoM للإعلان عن الاعتمادات في ملف Gradle للوحدة (على مستوى التطبيق) (عادةً ما يكون app/build.gradle). عند استخدام BoM، لا تحدِّد إصدارات المكتبات الفردية في أسطر الاعتماد.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:34.17.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

في ما يلي بعض الأسئلة الشائعة حول استخدام Firebase Android BoM

مقارنة إصدارات Firebase BoM

وحدات مكتبة Kotlin extensions (KTX)

وحدات الميزات وعرض الميزات في Play

اعتبارًا من مايو 2021 (Firebase BoM v28.0.0)، يمكن استخدام Firebase Android SDKs في وحدات الميزات الديناميكية التي يتم تثبيتها بشكل منفصل عن وحدة التطبيق الأساسية.

لتفعيل دعم وحدات الميزات الديناميكية، أضِف الاعتماد التالي إلى ملف build.gradle الخاص بالوحدة الأساسية:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta04'
}

بعد إضافة دعم الوحدات الديناميكية، يمكنك إضافة اعتمادات Firebase SDK (مع Firebase BoM أو بدونه) إلى وحدات الميزات في تطبيقك واستخدامها كالمعتاد.

على سبيل المثال، إذا كان تطبيقك يستخدم Realtime Database لتشغيل ميزة معيّنة في الوقت الفعلي ، يمكنك إضافة الاعتماد firebase-database إلى build.gradle الخاص بوحدة الميزات بدلاً من الوحدة الأساسية. سيؤدي ذلك إلى تقليل حجم التنزيل لمعظم المستخدمين.

يُرجى العِلم بالمحاذير التالية عند استخدام Firebase SDKs في وحدات الميزات:

  • قد لا تتلقّى منتجات مثل Dynamic Links أو Firebase In-App Messaging التي تعتمد على حدث Analytics first_open هذا الحدث عند استخدامها في وحدة ميزات ديناميكية.

  • عند استخدام Cloud Firestore وAuthentication معًا، يجب تضمينهما معًا في الوحدة نفسها دائمًا. إذا لم يكن ذلك ممكنًا، تأكَّد من تحميل Authentication قبل Cloud Firestore، وإلا قد يكون لبعض عمليات Cloud Firestore حالة مصادقة غير صحيحة.

  • عند استخدام firebase-crashlytics-ndk كاعتمادية لوحدة ميزات ديناميكية، عليك ضبط السمة unstrippedNativeLibsDir في ملف build.gradle الخاص بتطبيقك، كما هو موضّح في مستندات Crashlytics NDK.

لمزيد من المعلومات عن وحدات الميزات وعرض الميزات في Play، يُرجى الانتقال إلى نظرة عامة على عرض الميزات في Play.

المكوّن الإضافي Gradle لخدمات Google مقابل خدمات Google Play مقابل متجر Google Play

تتّبع عدة أجزاء من نظام Google وFirebase ومنظومة Android المتكاملة اصطلاحات تسمية مماثلة. في ما يلي شرح موجَز لكل منها:

المكوّن الإضافي Gradle لخدمات Google
مكوّن إضافي لـ Gradle (com.google.gms.google-services) يتم تشغيله في مدّة التصميم لـ ضمان أنّ تطبيقك يتضمّن الإعدادات الصحيحة للوصول إلى Firebase وGoogle APIs
على الرغم من اسمه، لا يرتبط هذا المكوّن الإضافي بخدمات Google Play (راجِع الإدخال التالي) وليس له أي تأثير في إمكانات تطبيقك في وقت التشغيل.
يعالج هذا المكوّن الإضافي أيضًا ملف google-services.json الذي تضيفه إلى تطبيقك كجزء من إعداد Firebase. مزيد من المعلومات حول الـ مكوّن الإضافي Gradle لخدمات Google.
خدمات Google Play
خدمة تُشغَّل في الخلفية على جهاز Android وتوفّر العديد من Google APIs الشائعة (مثل "خرائط Google" و"تسجيل الدخول باستخدام حساب Google") للتطبيقات على الجهاز
من خلال تجميع Google APIs الشائعة هذه في خدمة واحدة، يتم تقليل حجم التطبيقات الأخرى ويسمح للجهاز بتلقّي تحديثات الأمان التلقائية والتحسينات في الميزات بدون تحديث نظام التشغيل. مزيد من المعلومات حول خدمات Google Play.
متجر Google Play
متجر لتنزيل التطبيقات والأفلام والكتب والمزيد على جهاز Android
بصفتك مطوّرًا، يمكنك إدارة التوزيع والإصدارات وما إلى ذلك لتطبيقك من خلال Google Play Console. إذا كان الجهاز يتضمّن متجر Google Play، يتم تشغيل خدمات Google Play أيضًا (راجِع الإدخال السابق). مزيد من المعلومات حول متجر Google Play للمطوّرين.
Google Play Games services
مجموعة من واجهات برمجة التطبيقات لمطوّري ألعاب الأجهزة الجوّالة
مزيد من المعلومات حول Google Play Games services وكيفية دمج Firebase مع مشروعك على Google Play Games services.

المصادر مفتوحة المصدر لـ Firebase Android SDKs

تتيح منصة Firebase تطوير البرامج مفتوحة المصدر، ونشجّع على تقديم المساهمات والملاحظات من المنتدى.

Firebase Android SDKs

يتم تطوير معظم Firebase Android SDKs كمكتبات مفتوحة المصدر في مستودع Firebase GitHub العلني. نعمل بنشاط على نقل مكتبات Firebase المتبقية التي تم تطويرها بشكل خاص إلى مستودع GitHub العلني قريبًا.

نماذج Quickstart

تحتفظ منصة Firebase بمجموعة من نماذج Quickstart لمعظم Firebase APIs على Android. يمكنك العثور على نماذج Quickstart هذه في مستودع Firebase GitHub العلني لـ Quickstart .

يمكنك فتح كل نموذج Quickstart كمشروع في استوديو Android، ثم تشغيله على جهاز جوّال أو جهاز افتراضي (AVD). أو يمكنك استخدام نماذج Quickstart هذه كرمز برمجي نموذجي لاستخدام Firebase SDKs.

مواضيع أخرى تهمّك