Bu sayfada, Firebase'i kullanırken karşılaşabileceğiniz Android'e özgü sorunlarla ilgili ipuçları ve sorun giderme adımları sunulmaktadır.
Başka sorunlarınız mı var yoksa sorununuzun aşağıda açıklanmadığını mı düşünüyorsunuz? Firebase'e genel veya ürüne özel daha fazla SSS için ana Firebase SSS sayfasını inceleyin.
Bildirilen sorunların güncel listesini ve sorun giderme adımlarını görmek için Firebase Android SDK GitHub deposuna da göz atabilirsiniz. Firebase Android SDK'sıyla ilgili kendi sorunlarınızı da buraya bildirmenizi öneririz.
Bir Firebase projesine Android uygulaması eklerken SHA-1 sağlamanız gerekir mi?
SHA-1 bilgileri, Firebase Authentication (Google ile oturum açma veya telefon numarası ile oturum açma kullanılırken) ve Firebase Dynamic Links tarafından zorunlu tutulur. Bu özellikleri kullanmıyorsanız SHA-1 sağlamanız gerekmez.
"Bu paket adı ve SHA-1 için başka bir projede zaten bir OAuth2 istemcisi var" hatasını nasıl çözebilirim?
Bu hata, başka bir Firebase veya Google Cloud projesinin, belirttiğiniz paket adını ve SHA-1'i içeren bir OAuth 2.0 istemci kimliği içerdiğini tespit ettiğimizde meydana gelir. Bu hatayı nasıl çözeceğinizi öğrenin.
Firebase'i Android projeme eklediğimde "Bulunamadı" hatası alıyorum.
Bu hata genellikle uygulamanızda Google'ın Maven deposuna yönelik bir veya daha fazla referansın eksik olduğu anlamına gelir. Gradle yapılandırma dosyanıza Google'ın Maven deposunu
(google()
) eklediğinizden emin olun.
- Projenizde
plugins
söz dizimi kullanılıyorsa bunusettings.gradle.kts
veyasettings.gradle
dosyanızdakiplugins
bölümüne ekleyin. - Projenizde
buildscript
söz dizimi kullanılıyorsa bunu proje düzeyindekibuild.gradle.kts
veyabuild.gradle
dosyanızdaki hembuildscript
hem deallprojects
bölümlerine ekleyin.
Android projeme Firebase SDK'sı eklediğimde invoke-custom desteği ve şeker azaltma özelliğini etkinleştirmeyle ilgili bir hata alıyorum.
Mayıs 2021'de (Firebase BoM v28.0.0), Firebase tüm Android kitaplıkları için şeker azaltmayı devre dışı bıraktı (sürüm notuna bakın).
Bu değişiklik, Android Gradle eklentisi (AGP) 4.2 veya önceki sürümleri kullanan Gradle derlemelerinde Java 8 desteğinin etkinleştirilmesi gerektiği anlamına gelir. Aksi takdirde, Firebase SDK'sı eklenirken bu Android projelerinde aşağıdaki derleme hatası meydana gelir:
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.
Bu derleme hatasını düzeltmek için iki seçenekten birini uygulayabilirsiniz:
- Hata mesajında listelenen
compileOptions
öğesini uygulama düzeyindekibuild.gradle.kts
veyabuild.gradle
dosyanıza ekleyin. - Android projenizin
minSdkVersion
değerini 26 veya daha yüksek bir değere yükseltin.
Uygulamamı yayınladıktan sonra Google ile oturum açma "12500:" hatası gösteriyor. Bu hatayı nasıl düzeltebilirim?
Bunun iki nedeni olabilir: Destek e-postası sağlamamışsınızdır veya SHA anahtarınız eksiktir. Bu hatayı düzeltmek için aşağıdaki koşulların tamamının geçerli olduğundan emin olun:
- Firebase konsolundaki projenizin Genel Ayarları'na bir destek e-postası eklediniz.
- Sürüm/üretim anahtar deponuzdaki SHA-1 sertifika parmak izini Firebase konsolunda Firebase Android uygulamanıza eklediniz (
Proje ayarları 'na gidin, Uygulamalarınız'a gidin ve Android uygulamanızı seçin). - Google Play Konsolu'ndaki SHA-1 sertifika parmak izini Firebase konsolundaki Firebase Android uygulamanıza eklediniz (
Proje ayarları 'na gidin, Uygulamalarınız'a gidin ve Android uygulamanızı seçin).
buildscript
söz dizimini kullanarak Android projelerine Firebase eklentileri nasıl eklenir?
Firebase'de aşağıdaki Gradle eklentileri bulunur:
Eklenti adı | Maven koordinatları | Son sürüm | Eklenti kimliği |
---|---|---|---|
Google Play Hizmetleri eklentisi | com.google.gms:google-services |
4.4.2 | com.google.gms.google-services |
App Distribution eklenti | com.google.firebase:firebase-appdistribution-gradle |
5.1.1 | com.google.firebase.appdistribution |
Crashlytics eklenti | com.google.firebase:firebase-crashlytics-gradle |
3.0.3 | com.google.firebase.crashlytics |
Performance Monitoring eklenti | com.google.firebase:perf-plugin |
1.4.2 | com.google.firebase.firebase-perf |
buildscript
söz dizimini hâlâ kullanan bir Android projesine Firebase eklentisi eklemek için:
Kök düzeyindeki (proje düzeyindeki) Gradle dosyanıza (
<project>/build.gradle.kts
veya<project>/build.gradle
) eklentiyi Maven koordinatlarını kullanarak bağımlı olarak ekleyin: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 } }Modül (uygulama düzeyi) Gradle dosyanıza (genellikle
<project>/<app-module>/build.gradle.kts
veya<project>/<app-module>/build.gradle
) eklenti kimliğini kullanarak eklentiyi ekleyin: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 ' ... }