FirebaseInitProvider: инициализация FirebaseApp неудачна
Мы следили за добавлением Firebase в ваш Android-проект, но мы не можем видеть приложение, получающее данные в Firebase Console.
И когда мы запускаем приложение, журнал говорит:
FirebaseInitProvider: FirebaseApp initialization unsuccessful
Что это значит? Что мы делаем не так?
Я не могу найти эту ошибку в документах, а не в StackOverflow.
- Цвет текста пункта меню «Действие»
- CheckBox не проверяется на прокрутку в пользовательском listview
- Невозможно загрузить скрипт из активов index.android.bundle в windows
- SpannableStringBuilder для создания String с несколькими шрифтами / размерами текста и т. Д. Пример?
- «Защищенные приложения» на телефонах Huawei и способы их устранения
- Как реализовать бесконечную галерею в Android?
- Зачем использовать Fragment # setRetainInstance (boolean)?
- isValidFragment Android API 19
- Получите силу сигнала Bluetooth
- Первый запуск занимает много времени (ClassLoader ссылается на неизвестный путь)
- Связывание FirebaseRecyclerViewAdapter с булевой / строковой картой.
- Android listview с проблемой флажка
- Просмотр с горизонтальным и вертикальным панорамированием / drag and dropм и усилением
Что это значит? Что мы делаем не так?
Предположим, что аутентификация не удалась.
a) repositories
и dependencies
buildscript
для уровня проекта build.gradle
:
buildscript { repositories { google() jcenter() } dependencies { // Android Gradle Plugin classpath "com.android.tools.build:gradle:3.1.4" // Google Services Plugin classpath "com.google.gms:google-services:4.1.0" } }
б) dependencies
для уровня модуля app/build.gradle
(на изображениях Android x86 для Android все еще может быть установлена предыдущая версия установленных приложений Google Play, например, 10.2.0
выполняется на текущем эмуляторе x86
, например, 11.8.0
работает на моем физическом устройстве ARM
). ссылки на play-services
и firebase-core
будут включать в себя все их модули, за исключением некоторых из них. update : теперь нужно указывать все библиотеки отдельно. ссылка com.google.android.gms:play‐services
и com.google.firebase:firebase-core
больше не работает с 15.0.0
.
android { ... buildTypes { debug { // suffixing the package name for debug builds, // in order to partially mute the crash-reporting // is an *optional* configuration (see below): applicationIdSuffix ".debug" } } } dependencies { // Google Play Services // https://developers.google.com/android/guides/releases api "com.google.android.gms:play-services-base:15.0.1" api "com.google.android.gms:play-services-auth:16.0.0" api "com.google.android.gms:play-services-identity:15.0.1" // Google Firebase // https://firebase.google.com/support/release-notes/android api "com.google.firebase:firebase-core:16.0.1" api "com.google.firebase:firebase-auth:16.0.3" api "com.google.firebase:firebase-config:16.0.0" api "com.google.firebase:firebase-storage:16.0.1" api "com.google.firebase:firebase-database:16.0.1" api "com.google.firebase:firebase-messaging:17.3.0" api "com.google.firebase:firebase-appindexing:16.0.1" api "com.google.firebase:firebase-functions:16.1.0" api "com.google.firebase:firebase-invites:16.0.1" // api "com.google.firebase:firebase-crash:16.0.1" api "com.google.firebase:firebase-ads:15.0.1" api "com.google.firebase:firebase-firestore:17.0.4" api "com.google.firebase:firebase-perf:16.0.0" // the inappmessaging may cause dependency conflicts: // api "com.google.firebase:firebase-inappmessaging:17.0.0" // api "com.google.firebase:firebase-inappmessaging-display:17.0.0" }
c) нижняя строка mobile/build.gradle
должна быть:
// apply the Google Services Plugin apply plugin: "com.google.gms.google-services"
d) убедитесь, что у вас (загруженные) учетные данные доступны в app/google-services.json
; на Firebase Console нужно добавить как SHA1 (или SHA256) hashи, отладки, так и ключи для освобождения, чтобы обеспечить правильную аутентификацию обеих строчек; как только все будет совпадать, оно должно сообщать:
I/FirebaseInitProvider: FirebaseApp initialization successful
Все это хорошо документировано, просто см. Настройка служб Google Play , Firebase Quickstart или Crash Reporting ; в то время как я нахожу эту статью в блоге Firebase весьма полезной: организация ваших приложений для Android с поддержкой Firebase , потому что в ней объясняется, как частично отключить отчет о сбоях. В примечаниях к выпуску всегда сообщаются обновления и изменения.
Это происходит, когда вы не apply plugin: 'com.google.gms.google-services'
в вашем app/build.gradle
. Попробуйте добавить его.
Также убедитесь, что в Android SDK Manager установлен SDK для служб Google Play.
Первое, что я бы посоветовал вам проверить:
1) Включили ли вы использование
в ваш манифест?
В моем случае я все правильно делал в Gradle. Несмотря на то, что он показал FirebaseApp initialization unsuccessful
Я добавил com.google.android.c2dm.permission.RECEIVE permission
в манифест, который решил мою проблему.
Убедитесь, что вы добавили эту строку в файл уровня приложения build.gradle
apply plugin: 'com.google.gms.google-services'
В моем случае я пытался выборочно компилировать сервисы Google Play. Вместо того, чтобы использовать
compile 'com.google.android.gms:play-services:9.4.0'
как описано на странице https://developers.google.com/android/guides/setup#ensure_devices_have_the_google_play_services_apk
Я вручную добавил карты и некоторые другие модули зависимостей из Google Play Services как
compile 'com.google.android.gms:play-services-maps:9.4.0' compile 'com.google.android.gms:play-services-places:9.4.0'
К несчастью, Firebase прекратила работать после этого.
В результате мне пришлось откатиться и вернуться к использованию
compile 'com.google.android.gms:play-services:9.4.0'
а не выборочно.
Я получил тот же вывод Logcat.
Исправлено это, обновив мою зависимость от сервисов Google Play Services
до 9.0.0 в моем приложении / build.gradle
и обновление
buildScript { //... dependencies { //... classpath 'com.google.gms:google-services:3.0.0' } }
в моем проекте build.gradle до 3.0.0