На этой странице приведены советы и рекомендации по устранению неполадок, характерных для Android, с которыми вы можете столкнуться при использовании Firebase.
У вас есть другие проблемы или вы не видите свою проблему в списке ниже? Обязательно ознакомьтесь с основным разделом FAQ Firebase, чтобы узнать больше FAQ по Firebase или по конкретным продуктам.
Вы также можете проверить репозиторий Firebase Android SDK GitHub для актуального списка сообщенных проблем и устранения неполадок. Мы призываем вас также сообщать о своих собственных проблемах, связанных с Firebase Android SDK!
Как устранить эту ошибку: «Клиент OAuth2 для этого имени пакета и SHA-1 уже существует в другом проекте»?
Эта ошибка возникает, если мы обнаруживаем, что другой проект Firebase или Google Cloud содержит идентификатор клиента OAuth 2.0 с указанным вами именем пакета и SHA-1. Узнайте, как устранить эту ошибку .
Когда я добавляю Firebase в свой проект Android, я получаю ошибку «Не удалось найти».
Эта ошибка обычно означает, что в вашем приложении отсутствует одна или несколько ссылок на репозиторий Google Maven. Обязательно включите репозиторий Google Maven ( google()
) в ваш файл конфигурации Gradle.
- Если ваш проект использует синтаксис
plugins
, включите его в раздел plugins
в файле settings.gradle.kts
или settings.gradle
. - Если ваш проект использует синтаксис
buildscript
, включите его в разделы buildscript
и allprojects
в файле build.gradle.kts
или build.gradle
уровня проекта.
Когда я добавляю Firebase SDK в свой проект Android, я получаю сообщение об ошибке поддержки invoke-custom и включении дешугаринга.
В мае 2021 года ( Firebase BoM v28.0.0) компания Firebase отключила дешугаринг для всех своих библиотек Android (см. примечание к выпуску ).
Это изменение означает, что сборки Gradle, использующие плагин Android Gradle (AGP) v4.2 или более ранней версии, должны включать поддержку Java 8. В противном случае при добавлении Firebase SDK эти проекты 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 или выше.
Google Sign-in показывает ошибку "12500:" после того, как я выпустил свое приложение. Как мне это исправить?
Есть две возможные причины, по которым это может произойти: вы не указали адрес электронной почты службы поддержки или у вас отсутствует ключ 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.4 | com.google.firebase.crashlytics |
Плагин Performance Monitoring | com.google.firebase:perf-plugin | 1.4.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'
...
}