Na tej stronie znajdziesz porady i sposoby rozwiązywania problemów z Androidem, które mogą wystąpić podczas korzystania z Firebase.
Masz inne problemy lub nie widzisz swojego problemu w poniższej liście? Aby dowiedzieć się więcej o Firebase lub poszczególnych usługach, zapoznaj się z najczęstszymi pytaniami dotyczącymi Firebase.
Aktualną listę zgłoszonych problemów i sposobów ich rozwiązania znajdziesz też w repozytorium GitHub pakietu SDK Firebase na Androida. Zachęcamy też do zgłaszania tam problemów związanych z pakietem SDK Firebase na Androida.
Jak rozwiązać ten błąd: „W innym projekcie istnieje już klient OAuth2 dla tej nazwy pakietu oraz tego certyfikatu SHA-1”?
Ten błąd występuje, gdy wykryjemy, że inny projekt Firebase lub Google Cloud zawiera identyfikator klienta OAuth 2.0 z podaną przez Ciebie nazwą pakietu i certyfikatem SHA-1. Dowiedz się, jak naprawić ten błąd.
Gdy dodaję Firebase do projektu na Androida, pojawia się błąd „Nie można znaleźć”.
Ten błąd zwykle oznacza, że w aplikacji brakuje co najmniej jednego odwołania do repozytorium Maven Google. Pamiętaj, aby uwzględnić repozytorium Maven firmy Google (google()
) w pliku konfiguracyjnym Gradle.
- Jeśli Twój projekt używa składni
plugins
, umieść ją w sekcji plugins
w pliku settings.gradle.kts
lub settings.gradle
.
- Jeśli Twój projekt używa składni
buildscript
, uwzględnij ją w sekcjach buildscript
i allprojects
pliku build.gradle.kts
lub build.gradle
na poziomie projektu.
Gdy dodaję pakiet SDK Firebase do projektu na Androida, pojawia się błąd dotyczący obsługi invoke-custom i włączania desugaringu.
W maju 2021 r. (Firebase BoM w wersji 28.0.0) Firebase wyłączyła desugaring we wszystkich swoich bibliotekach na Androida (patrz informacje o wersji).
Ta zmiana oznacza, że kompilacje Gradle, które korzystają z wtyczki Androida Gradle (AGP) w wersji 4.2 lub starszej, muszą mieć włączone wsparcie dla Javy 8. W przeciwnym razie podczas dodawania pakietu SDK Firebase te projekty na Androida będą miały następujący błąd kompilacji:
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.
Aby rozwiązać ten problem, możesz wykonać jedną z tych czynności:
- Dodaj wymienione w komunikacie o błędzie wartości
compileOptions
do pliku build.gradle.kts
lub build.gradle
na poziomie aplikacji.
- Zwiększ wartość
minSdkVersion
w projekcie na Androida do 26 lub wyższej.
Po opublikowaniu aplikacji logowanie przez Google wyświetla błąd „12500:”. Jak mogę go naprawić?
Może się tak zdarzyć z 2 przyczyn: nie podano adresu e-mail pomocy lub brakuje klucza SHA. Aby naprawić ten błąd, sprawdź, czy wszystkie te warunki są spełnione:
Jak dodać wtyczki Firebase do projektu na Androida za pomocą składni buildscript
?
Firebase ma te wtyczki Gradle:
Nazwa wtyczki |
Współrzędne Maven |
Najnowsza wersja |
Identyfikator wtyczki |
Wtyczka Usługi Google Play |
com.google.gms:google-services |
4.4.2 |
com.google.gms.google-services |
Wtyczka App Distribution |
com.google.firebase:firebase-appdistribution-gradle |
5.1.1 |
com.google.firebase.appdistribution |
Wtyczka Crashlytics |
com.google.firebase:firebase-crashlytics-gradle |
3.0.3 |
com.google.firebase.crashlytics |
Wtyczka Performance Monitoring |
com.google.firebase:perf-plugin |
1.4.2 |
com.google.firebase.firebase-perf |
Aby dodać wtyczkę Firebase do projektu na Androida, który nadal używa składni buildscript
:
W pliku Gradle na poziomie katalogu głównego (na poziomie projektu) (<project>/build.gradle.kts
lub <project>/build.gradle
) dodaj wtyczkę jako zależność, używając jej współrzędnych 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
}
}
W pliku Gradle modułu (na poziomie aplikacji) (zazwyczaj <project>/<app-module>/build.gradle.kts
lub <project>/<app-module>/build.gradle
) dodaj wtyczkę, używając jej identyfikatora:
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'
...
}