این صفحه نکتهها و عیبیابیهایی برای مشکلات خاص Android ارائه میدهد
که ممکن است هنگام استفاده از Firebase با آنها مواجه شوید.
آیا چالشهای دیگری دارید یا مشکلتان در زیر ذکر نشده است؟ حتماً
پرسشگان اصلی Firebase را برای پرسشگان خاص محصول یا
سراسر Firebase بررسی کنید.
همچنین میتوانید برای مشاهده فهرست بهروز مشکلات گزارششده و عیبیابی، به
مخزن GitHub کیت توسعه نرمافزار Firebase ویژه Android
مراجعه کنید. توصیه میکنیم
مشکلات مربوط به کیت توسعه نرمافزار Firebase Android خودتان را نیز در آنجا ثبت کنید!
خطایی دریافت میکنم مبنی بر اینکه کتابخانه ktx تجزیه نشد یا پیدا نشد.
این خطا احتمالاً بهدلیل استفاده از Firebase BoM و
مشخص کردن یک ماژول KTX بهعنوان وابستگی کتابخانه محصول شما است.
در ژوئیه ۲۰۲۵، انتشار نسخههای جدید ماژولهای KTX را متوقف کردیم
و کتابخانههای KTX را از Firebase Android BoM
(نسخه ۳۴.۰.۰) برداشتیم.
اگر از میاناهای برنامهسازی کاربردی 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 در سطح پروژه اضافه کنید.
وقتی کیت توسعه نرمافزار Firebase را به پروژه Android خودم اضافه میکنم، خطایی درباره
پشتیبانی invoke-custom و فعال کردن شکرزدایی دریافت میکنم.
در مه ۲۰۲۱ (Firebase BoM نسخه ۲۸.۰.۰)، Firebase شکرزدایی را برای همه کتابخانههای Android خود غیرفعال کرد (یادداشت انتشار را ببینید).
این تغییر به این معنی است که ساختهای Gradle که از افزایه Android Gradle (AGP) نسخه ۴.۲
یا قدیمیتر استفاده میکنند باید پشتیبانی از Java 8 را فعال کنند. درغیراینصورت، هنگام افزودن کیت توسعه نرمافزار 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 خود به ۲۶ یا بالاتر افزایش دهید.
«ورود به سیستم با Google» پساز انتشار برنامهام خطای «12500:» را نشان میدهد. چگونه
آن را برطرف کنم؟
دو دلیل احتمالی برای این اتفاق وجود دارد: ایمیل پشتیبانی ارائه نکردهاید یا کلید SHA ندارید. برای رفع این خطا، مطمئن شوید
همه این شرایط برقرار باشد:
چگونه افزایههای Firebase را بااستفاده از نحو buildscript به پروژه Android اضافه کنم؟
Firebase افزایههای Gradle زیر را دارد:
| نام افزایه |
مختصات Maven |
جدیدترین نسخه |
شناسه افزایه |
| افزونه خدمات Google Play |
com.google.gms:google-services |
4.5.0 |
com.google.gms.google-services |
| افزایه App Distribution |
com.google.firebase:firebase-appdistribution-gradle |
5.3.1 |
com.google.firebase.appdistribution |
| افزایه Crashlytics |
com.google.firebase:firebase-crashlytics-gradle |
۳.۰.۸ |
com.google.firebase.crashlytics |
| افزایه Performance Monitoring |
com.google.firebase:perf-plugin |
2.0.2 |
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'
...
}
چه اعلامیههای متنبازی را باید در برنامهام بگنجانم؟
کیت توسعه نرمافزار Firebase Android حاوی یک
کمککننده Activity
برای نمایش اطلاعات پروانه است.