تقدّم هذه الصفحة نصائح ومعلومات لتحديد المشاكل وحلّها على أجهزة Android التي قد تواجهها عند استخدام Firebase.
هل تواجه تحديات أخرى أو لا ترى مشكلتك موضّحة أدناه؟ يُرجى الاطّلاع على الأسئلة الشائعة الرئيسية حول Firebase للحصول على المزيد من الأسئلة الشائعة حول Firebase أو منتجاته.
يمكنك أيضًا الاطّلاع على مستودع GitHub الخاص بحزمة تطوير البرامج لنظام التشغيل Android في Firebase للحصول على قائمة حديثة بالمشاكل التي تم الإبلاغ عنها وحلّها. ونشجّعك أيضًا على تسجيل المشاكل المتعلّقة بحزمة تطوير البرامج (SDK) لنظام التشغيل Android في Firebase.
تظهر لي رسالة خطأ تفيد بأنّه تعذّر حلّ مكتبة ktx
أو لم يتم العثور عليها.
من المحتمل أن يكون سبب هذا الخطأ هو استخدامك Firebase BoM وتحديد وحدة KTX كعنصر تابع لمكتبة المنتج.
في يوليو 2025، توقّفنا عن إصدار إصدارات جديدة من وحدات KTX، وأزلنا مكتبات KTX من Firebase Android BoM (الإصدار 34.0.0).
إذا كنت تستخدم واجهات KTX البرمجية من وحدات KTX التي تم إصدارها سابقًا، ننصحك بنقل تطبيقك لاستخدام واجهات KTX البرمجية من الوحدات الرئيسية بدلاً من ذلك. لمعرفة التفاصيل، يُرجى الاطّلاع على الأسئلة الشائعة حول هذه المبادرة.
هل يجب تقديم رمز SHA-1 عند إضافة تطبيق Android إلى مشروع على Firebase؟
يجب توفير معلومات SHA-1 في Firebase Authentication (عند استخدام تسجيل الدخول باستخدام حساب Google أو تسجيل الدخول باستخدام رقم الهاتف) و Firebase Dynamic Links. إذا لم تكن تستخدم هذه الميزات، لن تحتاج إلى تقديم SHA-1.
كيف يمكنني حلّ الخطأ: "يتوفّر حاليًا عميل OAuth2 لاسم الحزمة وSHA-1 في مشروع آخر"؟
يحدث هذا الخطأ إذا رصدنا أنّ مشروعًا آخر على Firebase أو Google Cloud يحتوي على معرّف عميل OAuth 2.0 مع اسم الحزمة وSHA-1 اللذين حدّدتهما. كيفية حلّ هذا الخطأ
عند إضافة Firebase إلى مشروع Android، أتلقّى رسالة الخطأ "تعذّر العثور على".
يشير هذا الخطأ عادةً إلى أنّ تطبيقك يفتقد إلى مرجع واحد أو أكثر إلى مستودع Maven الخاص بـ Google. تأكَّد من تضمين مستودع Maven من Google
(google()
) في ملف إعدادات Gradle.
- إذا كان مشروعك يستخدم بنية
plugins
، عليك تضمينها في قسمplugins
في ملفsettings.gradle.kts
أوsettings.gradle
. - إذا كان مشروعك يستخدم بنية
buildscript
، أدرِجها في كل من القسمينbuildscript
وallprojects
في ملفbuild.gradle.kts
أوbuild.gradle
على مستوى المشروع.
عندما أضيف حزمة تطوير برامج (SDK) من Firebase إلى مشروع Android، تظهر لي رسالة خطأ بشأن إتاحة invoke-custom وتفعيل عملية إزالة التشفير.
في أيار (مايو) 2021 (الإصدار Firebase BoM 28.0.0)، أوقفت Firebase عملية إزالة التشويش لجميع مكتبات Android (راجِع ملاحظات الإصدار).
يعني هذا التغيير أنّه يجب تفعيل إمكانية استخدام Java 8 في إصدارات Gradle التي تستخدم الإصدار 4.2 أو إصدارًا أقدم من المكوّن الإضافي لنظام Gradle المتوافق مع Android (AGP). بخلاف ذلك، عند إضافة حزمة تطوير برامج (SDK) لمنصة Firebase، ستظهر أخطاء الإنشاء التالية في مشاريع Android هذه:
D8: Invoke-customs are only supported starting with Android O (--min-api 26) Caused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing. The dependency contains Java 8 bytecode. Please enable desugaring by adding the following to build.gradle android { compileOptions { sourceCompatibility 1.8 targetCompatibility 1.8 } } See https://developer.android.com/studio/write/java8-support.html for details. Alternatively, increase the minSdkVersion to 26 or above.
لحلّ مشكلة تعذُّر الإنشاء هذه، يمكنك اتّباع أحد الخيارَين التاليَين:
- أضِف
compileOptions
المُدرَج في رسالة الخطأ إلى ملف على مستوى التطبيقbuild.gradle.kts
أوbuild.gradle
. - ارفع قيمة
minSdkVersion
لمشروع Android إلى 26 أو أعلى.
يظهر الخطأ "12500:" في خدمة "تسجيل الدخول باستخدام Google" بعد طرح تطبيقي. كيف يمكنني إصلاح هذا الخطأ؟
هناك سببان محتملان لحدوث ذلك: إما أنّك لم تقدّم عنوان بريد إلكتروني مخصّصًا للدعم أو أنّك لم تقدّم مفتاح SHA. لإصلاح هذا الخطأ، تأكَّد من توفُّر جميع الشروط التالية:
- لقد أضفت عنوان بريد إلكتروني مخصّصًا للدعم إلى الإعدادات العامة لمشروعك في وحدة تحكّم Firebase.
- لقد أضفت
بصمة شهادة SHA-1 من ملف تخزين المفاتيح الخاص بإصدارك/إنتاجك
إلى تطبيق Android على Firebase في وحدة تحكّم Firebase (انتقِل إلى
إعدادات المشروع ، ثم انتقِل للأسفل إلى تطبيقاتك، ثم اختَر تطبيق Android). - لقد أضفت
الملف المرجعي لشهادة SHA-1 من Google Play Console
إلى تطبيق Android على Firebase في وحدة تحكّم Firebase (انتقِل إلى
إعدادات المشروع ، ثم انتقِل إلى تطبيقاتك، ثم اختَر تطبيق Android).
كيف يمكن إضافة مكوّنات Firebase الإضافية إلى مشروع Android باستخدام بنية buildscript
؟
تتضمّن Firebase المكوّنات الإضافية التالية لنظام Gradle:
اسم المكوّن الإضافي | إحداثيات Maven | أحدث إصدار | معرّف المكوّن الإضافي |
---|---|---|---|
مكوّن "خدمات Google Play" الإضافي | com.google.gms:google-services |
4.4.3 | com.google.gms.google-services |
App Distribution مكوّن إضافي | com.google.firebase:firebase-appdistribution-gradle |
5.1.1 | com.google.firebase.appdistribution |
Crashlytics مكوّن إضافي | com.google.firebase:firebase-crashlytics-gradle |
3.0.5 | com.google.firebase.crashlytics |
Performance Monitoring مكوّن إضافي | com.google.firebase:perf-plugin |
2.0.0 | com.google.firebase.firebase-perf |
في ما يلي كيفية إضافة إضافة Firebase إلى مشروع Android لا يزال يستخدم بنية buildscript
:
في ملف Gradle على مستوى الجذر (على مستوى المشروع)(
<project>/build.gradle.kts
أو<project>/build.gradle
)، أضِف المكوّن الإضافي كعنصر تابع باستخدام إحداثيات Maven الخاصة به:buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the Maven coordinates and latest version of the plugin classpath ("
PLUGIN_MAVEN_COORDINATES :PLUGIN_VERSION ") } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the Maven coordinates and latest version of the plugin classpath '
PLUGIN_MAVEN_COORDINATES :PLUGIN_VERSION ' } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }في ملف Gradle للوحدة (على مستوى التطبيق) (عادةً
<project>/<app-module>/build.gradle.kts
أو<project>/<app-module>/build.gradle
)، أضِف المكوّن الإضافي باستخدام رقم تعريفه:plugins { id("com.android.application") // Add the ID of the plugin id("
FIREBASE_PLUGIN_ID ") ... }plugins { id 'com.android.application' // Add the ID of the plugin id '
FIREBASE_PLUGIN_ID ' ... }