فهم Firebase لنظام Android

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

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

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

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

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

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

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

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

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

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

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

Firebase Android BoM (Bill of Materials)

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

عند استخدام Firebase BoM في تطبيقك، يجلب BoM تلقائيًا إصدارات المكتبة الفردية المرتبطة بإصدار BoM. ستكون جميع إصدارات المكتبة الفردية متوافقة. عند تعديل إصدار BoM في تطبيقك، سيتم تعديل جميع مكتبات 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.0.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 (KTX)

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

اعتبارًا من أيار (مايو) 2021 (الإصدار Firebase BoM 28.0.0)، يمكن استخدام حِزم تطوير البرامج (SDK) لنظام التشغيل Android من Firebase في وحدات الميزات الديناميكية التي يتم تثبيتها بشكل منفصل عن وحدة التطبيق الأساسية.

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

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

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

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

يُرجى الانتباه إلى التحذيرات التالية عند استخدام حِزم تطوير البرامج (SDK) لنظام Firebase في الوحدات المميزة:

  • قد لا يتم تسجيل هذا الحدث في منتجات مثل 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".

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

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

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

مراجع مفتوحة المصدر لحِزم تطوير البرامج (SDK) لنظام التشغيل Android في Firebase

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

حِزم Firebase Android SDK

يتم تطوير معظم حِزم تطوير البرامج (SDK) لنظام التشغيل Android في Firebase كمكتبات مفتوحة المصدر في مستودع Firebase GitHub العام. نعمل حاليًا على نقل مكتبات Firebase المتبقية التي تم تطويرها بشكل خاص إلى GitHub العام قريبًا.

أمثلة على Quickstart

تحتفظ Firebase بمجموعة من نماذج التشغيل السريع لمعظم واجهات برمجة التطبيقات في Firebase على Android. يمكنك العثور على هذه الأدلة السريعة في مستودع GitHub العام للأدلة السريعة في Firebase.

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

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