تعرف على المزيد حول Android و Firebase

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

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

المكون الإضافي Firebase Assistant لـ Android Studio

Firebase Assistant هو مكون إضافي لـ Android Studio يسجل تطبيق Android الخاص بك مع مشروع Firebase ويضيف ملفات تهيئة Firebase الضرورية والمكونات الإضافية والتبعيات إلى مشروع Android الخاص بك - كل ذلك من داخل Android Studio!

اتبع الإرشادات في الروبوت الحصول على الصفحة التي لاستخدام مساعد Firebase. تأكد من أنك تستخدم معظم إصدارات يصل إلى تاريخ كل من الروبوت ستوديو ومساعد Firebase (اذهب إلى ملف> البحث عن تحديثات).

عند اختيار المنتجات Firebase المحددة لإضافة إلى التطبيق الخاص بك، مساعد Firebase يعلن تلقائيا تبعيات المطلوبة في حياتك app/build.gradle الملف. ومع ذلك ، لاستخدام ميزات Firebase التي تتجاوز الإمكانات الحالية لـ Firebase Assistant ، قد ترغب في إجراء بعض التغييرات اليدوية على هذه التبعيات:

  • إذا كنت ترغب في استخدام Firebase الروبوت بوم ، تحديث تبعيات في الوحدة النمطية الخاصة بك (على مستوى التطبيق) ملف Gradle (عادة app/build.gradle ) لاستيراد منصة بوم. ستحتاج أيضًا إلى إزالة الإصدارات من كل سطر تبعية لمكتبة Firebase.

  • إذا كنت ترغب في استخدام مكتبة Kotlin ملحقات تعديل خط التبعية تضاف إلى الوحدة النمطية الخاص بك (على مستوى التطبيق) ملف Gradle (عادة app/build.gradle ) لاستخدام ktx نسخة من مكتبة Firebase بدلا من ذلك.

خدمات Google - البرنامج المساعد وملف التكوين

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

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

زيارة ثائق الروبوت لمعرفة المزيد عن كيفية المساعد لخدمات Google وعمل ملف التكوين معا.

Firebase Android BoM (قائمة المواد)

يمكّنك Firebase Android BoM (قائمة المواد) من إدارة جميع إصدارات مكتبة Firebase من خلال تحديد إصدار واحد فقط - إصدار BoM.

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

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

معرفة المزيد عن دعم Gradle لمنصات بوم .

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

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

  // 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)

مكتبات ملحقات Firebase Kotlin (KTX) هي مرافق صغيرة لمجموعة أدوات تطوير البرامج (SDK) الأساسية لـ Firebase والتي تتيح لك كتابة كود Kotlin الجميل والاصطلاحي.

لاستخدام مكتبة KTX في التطبيق الخاص بك، قم بتغيير التبعية لتضمين -ktx لاحقة. تعتمد كل مكتبة من مكتبات KTX تلقائيًا على المكتبة الأساسية ، لذلك ليست هناك حاجة لتضمين كلا التبعيتين في تطبيقك.

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

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

توفر كل مكتبة KTX امتدادات نحوية مختلفة للمكتبة الأساسية. على سبيل المثال ، تجعل مكتبة Analytics KTX من الأسهل تسجيل الأحداث:

قبل (باستخدام مكتبة القاعدة)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

بعد (باستخدام مكتبة KTX بدلا من ذلك)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

جميع المنتجات Firebase توفر مكتبة KTX باستثناء Firebase ML والتطبيقات الفهرسة.

إذا كنت لم تقم بعد، وتحقق من مستندات مرجعية API لمكتبات KTX.

الوحدات النمطية وتشغيل ميزة التسليم

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

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

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

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

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

انتبه إلى التحذيرات التالية عند استخدام حزم Firebase SDK في وحدات الميزات:

  • منتجات مثل الديناميكية سريعة أو Firebase داخل التطبيق التراسل التي تعتمد على تحليلات first_open الحدث قد يغيب عن هذا الحدث عند استخدامها في وحدة نمطية ميزة ديناميكية.

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

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

لمزيد من المعلومات حول وحدات ميزة والتشغيل ميزة التوصيل، بزيارة لمحة عامة عن اللعب ميزة التوصيل .

Google Services Gradle plugin مقابل خدمات Google Play مقابل متجر Google Play

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

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

مصادر مفتوحة المصدر لحزم Firebase Android SDK

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

تطبيقات Firebase Android SDK

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

عينات البدء السريع

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

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

مواضيع أخرى ذات أهمية