تحديد المشاكل وحلّها الأسئلة الشائعة حول Android وFirebase
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تقدّم هذه الصفحة نصائح ومعلومات لتحديد المشاكل وحلّها على أجهزة 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 البرمجية من الوحدات الرئيسية بدلاً من ذلك. لمعرفة التفاصيل، يُرجى الاطّلاع على
الأسئلة الشائعة حول هذه المبادرة.
كيف يمكنني حلّ الخطأ: "يتوفّر حاليًا عميل 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 الإضافية إلى مشروع 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 الخاصة به:
Kotlin
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
}
}
Groovy
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
)، أضِف المكوّن الإضافي باستخدام رقم تعريفه:
Kotlin
plugins {
id("com.android.application")
// Add the ID of the plugin
id("FIREBASE_PLUGIN_ID")
...
}
Groovy
plugins {
id 'com.android.application'
// Add the ID of the plugin
id 'FIREBASE_PLUGIN_ID'
...
}
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-21 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-21 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["\u003cbr /\u003e\n\nThis page offers tips and troubleshooting for Android-specific issues\nthat you might encounter when using Firebase.\n\nHave other challenges or don't see your issue outlined below? Make sure to check\nout the [main Firebase FAQ](/support/faq) for more pan-Firebase or\nproduct-specific FAQ.\n\nYou can also check out the\n[Firebase Android SDK GitHub repo](https://github.com/firebase/firebase-android-sdk/issues)\nfor an up-to-date list of reported issues and troubleshooting. We encourage you\nto file your own Firebase Android SDK related issues there, too! \n\nI'm getting an error that the `ktx` library failed to resolve or\ncould not be found.\n\nThis error is likely because you're using the Firebase BoM and\nspecifying a KTX module as your product library dependency.\n\n**In July 2025, we stopped releasing new versions of the KTX modules,\nand we removed the KTX libraries from the Firebase Android BoM\n(v34.0.0).**\n\nIf you use KTX APIs from previously released KTX modules, we recommend\nthat you ***migrate your app to use KTX APIs from the main modules\ninstead*** . For details, see the\n[FAQ about this initiative](/docs/android/kotlin-migration). \n\nDo I need to provide a SHA-1 when adding an Android app to a Firebase\nproject?\n\n[SHA-1 information](//developers.google.com/android/guides/client-auth)\nis required by Firebase Authentication (when using\n[Google signin](/docs/auth/android/google-signin) or\n[phone number signin](/docs/auth/android/phone-auth)) and\n[Firebase Dynamic Links](/docs/dynamic-links). If you're not using\nthese features, you don't have to provide a SHA-1. \n\nHow do I resolve this error: \"An OAuth2 client already exists for this\npackage name and SHA-1 in another project\"?\n\nThis error occurs if we detect that another Firebase or Google Cloud\nproject contains an OAuth 2.0 client ID with the package name\nand SHA-1 that you specified. Learn how to\n[resolve this error](//support.google.com/firebase/answer/6401008). \n\nWhen I add Firebase to my Android project, I get a \"Could not find\" error.\n\nThis error usually means that your app is missing one or more references\nto Google's Maven repository. Make sure to include Google's Maven repository\n(`google()`) in your Gradle Configuration file.\n\n- If your project is using the `plugins` syntax, include it in the `plugins` section in your `settings.gradle.kts` or `settings.gradle` file.\n- If your project is using the `buildscript` syntax, include it in both the `buildscript` and `allprojects` sections in your project-level `build.gradle.kts` or `build.gradle` file.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nWhen I add a Firebase SDK to my Android project, I get an error about\ninvoke-custom support and enabling desugaring.\n\n\u003cbr /\u003e\n\nIn May 2021 (Firebase BoM v28.0.0), Firebase disabled desugaring for all its\nAndroid libraries\n(see [release note](/support/release-notes/android#2021-05-11)).\n\nThis change means that Gradle builds that use Android Gradle plugin (AGP) v4.2\nor earlier need to enable Java 8 support. Otherwise, when adding a Firebase SDK,\nthese Android projects get the following build failure: \n\n```\nD8: Invoke-customs are only supported starting with Android O (--min-api 26)\nCaused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.\nThe dependency contains Java 8 bytecode. Please enable desugaring by adding the following to build.gradle\nandroid {\n compileOptions {\n sourceCompatibility 1.8\n targetCompatibility 1.8\n }\n}\nSee https://developer.android.com/studio/write/java8-support.html for details.\nAlternatively, increase the minSdkVersion to 26 or above.\n```\n\nTo fix this build failure, you can follow one of two options:\n\n- Add the listed `compileOptions` from the error message to your **app-level** `build.gradle.kts` or `build.gradle` file.\n- Increase the `minSdkVersion` for your Android project to 26 or above.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nGoogle Sign-in is showing the error \"12500:\" after I released my app. How\ndo I fix it?\n\n\nThere are two possible reasons why this would happen: you haven't provided a\nsupport email or you're missing a SHA key. In order to fix this error, make\nsure **all** of these conditions are true:\n\n- You've added a support email to the [General Settings of your project](https://console.firebase.google.com/project/_/settings/general/) in the Firebase console.\n- You've added the [SHA-1 Certificate fingerprint from your release/production keystore](https://developers.google.com/android/guides/client-auth#using_keytool_on_the_certificate) to your Firebase Android App in the Firebase console (go to settings [**Project settings**](//console.firebase.google.com/project/_/settings/general/), scroll down to *Your apps*, and then select your Android App).\n- You've added the [SHA-1 Certificate fingerprint from the Google Play Console](https://developer.android.com/studio/publish/app-signing#api-providers) to your Firebase Android App in the Firebase console (go to settings [**Project settings**](//console.firebase.google.com/project/_/settings/general/), scroll down to *Your apps*, and then select your Android App).\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nHow to add Firebase plugins to an Android project using the `buildscript`\nsyntax?\n\n\u003cbr /\u003e\n\n| **Tip:** Consider [migrating from `buildscript` to `plugin` syntax](https://developer.android.com/build/migrate-to-kotlin-dsl#migrate-buildscript) as this allows Android Studio to perform code completion and provide other helpful suggestions.\n\nFirebase has the following Gradle plugins:\n\n| Plugin name | Maven coordinates | Latest version | Plugin ID |\n|-------------------------------|-------------------------------------------------------|----------------|---------------------------------------|\n| Google Play services plugin | `com.google.gms:google-services` | 4.4.3 | `com.google.gms.google-services` |\n| App Distribution plugin | `com.google.firebase:firebase-appdistribution-gradle` | 5.1.1 | `com.google.firebase.appdistribution` |\n| Crashlytics plugin | `com.google.firebase:firebase-crashlytics-gradle` | 3.0.6 | `com.google.firebase.crashlytics` |\n| Performance Monitoring plugin | `com.google.firebase:perf-plugin` | 2.0.1 | `com.google.firebase.firebase-perf` |\n\n\u003cbr /\u003e\n\nHere's how to add a Firebase plugin to an Android project that still uses the\n`buildscript` syntax:\n\n1. In your **root-level (project-level)** Gradle file\n (`\u003cproject\u003e/build.gradle.kts` or `\u003cproject\u003e/build.gradle`), add the plugin as\n a dependency using its Maven coordinates:\n\n Kotlin \n\n buildscript {\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n\n dependencies {\n ...\n\n // Add the Maven coordinates and latest version of the plugin\n classpath (\"\u003cvar translate=\"no\"\u003ePLUGIN_MAVEN_COORDINATES\u003c/var\u003e:\u003cvar translate=\"no\"\u003ePLUGIN_VERSION\u003c/var\u003e\")\n }\n }\n\n allprojects {\n ...\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n }\n\n Groovy \n\n buildscript {\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n\n dependencies {\n ...\n\n // Add the Maven coordinates and latest version of the plugin\n classpath '\u003cvar translate=\"no\"\u003ePLUGIN_MAVEN_COORDINATES\u003c/var\u003e:\u003cvar translate=\"no\"\u003ePLUGIN_VERSION\u003c/var\u003e'\n }\n }\n\n allprojects {\n ...\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n }\n\n2. In your **module (app-level)** Gradle file (usually\n `\u003cproject\u003e/\u003capp-module\u003e/build.gradle.kts` or\n `\u003cproject\u003e/\u003capp-module\u003e/build.gradle`), add the plugin using its\n plugin ID:\n\n Kotlin \n\n plugins {\n id(\"com.android.application\")\n\n // Add the ID of the plugin\n id(\"\u003cvar translate=\"no\"\u003eFIREBASE_PLUGIN_ID\u003c/var\u003e\")\n ...\n }\n\n Groovy \n\n plugins {\n id 'com.android.application'\n\n // Add the ID of the plugin\n id '\u003cvar translate=\"no\"\u003eFIREBASE_PLUGIN_ID\u003c/var\u003e'\n ...\n }\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e"]]