373

我们看到消息中有一些例外默认FirebaseApp未在此进程com.example.app中初始化。确保首先调用FirebaseApp.initializeApp(Context)。在我们的Android应用程序中,我们刚刚添加了Firebase Remote Config。

堆栈跟踪如下:

致命异常:java.lang.IllegalStateException:默认FirebaseApp在此进程com.example.app中未初始化。确保首先调用FirebaseApp.initializeApp(Context)。在com.google.firebase。FirebaseApp.getInstance(未知源)网址:com.google.firebase.remoteconfig。FirebaseRemoteConfig.getInstance(未知源)在com.example.app.fragments上。SomeFragment.updateFooter(源文件:295)在com.example.app.fragments上。SomeFragment.onCreateView(源文件:205)在android.support.v4.app上。Fragment.performCreateView(源文件:2080)在android.support.v4.app上。FragmentManagerImpl.moveToState(源文件:1108)在android.support.v4.app上。FragmentManagerImpl.moveToState(源文件:1290)在android.support.v4.app上。BackStackRecord.run(源文件:801)在android.support.v4.app上。FragmentManagerImpl.execSingleAction(源文件:1638)在android.support.v4.app上。BackStackRecord.commitNowAllowingStateLoss(源文件:679)在android.support.v4.app上。FragmentPagerAdapter.finishUpdate(源文件:143)在android.support.v4.view上。ViewPager.populate(源文件:1240)在android.support.v4.view上。ViewPager.populate(源文件:1088)在android.support.v4.view上。ViewPager.setAdapter(源文件:542)请访问com.example.app。SomeActivity.onSomeAsyncCallback(源文件:908)请访问com.example.app。SomeDataRetriever.onAncHttpCompleted(源文件:72)位于com.example.app.io.AsyncHttp.onPostExecute(源文件:141)位于com.example.app.io.AsyncHttp.onPostExecute(源文件:19)在android.os上。AsyncTask.finish(异步任务.java:679)在android.os。异步任务访问$500(AsyncTask.java:180)在android.os上。异步任务$InternalHandler.handleMessage(AsyncTask.java:696)在android.os上。Handler.dispatchMessage(Handler.java:102)在android.os上。Looper.loop(Looper.java:150)在android.app上。ActivityThread.main(ActivityThread.java:5665)位于java.lang.reflect。调用方法(Method.java)请访问com.android.internal.os。ZygoteInit$MethodAndArgsCaller.run(Zygote Init.java:799)请访问com.android.internal.os。ZygoteInit.main(Zygote Init.java:689)

这是9.6.1版,我们还使用了其他Firebase组件:

编译“com.google.firebase:firebase-ads:9.6.1”编译“com.google.firebase:firebase-config:9.6.1”编译“com.google.firebase:firebase-invites:9.6.1”编译“com.google.firebase:firebase-message:9.6.1”

正如我所见来自文档Javadoc在本例中,我们不需要进行任何手动初始化。

例外情况发生在各种设备上的Android 4-6上。

编辑:

我看到这个问题得到了一些关注。我认为这个解释对你们中的一些人来说可能很有趣:https://firebase.googleblog.com/2016/12/how-does-firebase-initialize-on-android.html

16
  • 1
    尝试在SO中搜索“Default FirebaseApp is not initialized”(默认FirebaseApp未初始化)。有很多不同的情况可能导致这种情况。 2016年10月17日18:22
  • 是的,我有。没有找到与之匹配的情况,所以这就是我问的原因。本可以在Q中提到这一点。 2016年10月17日19:18
  • 您是否能够生成一个重现此问题的最小示例,并显示manifest、build.gradle和Activity? 2016年10月17日20:35
  • 您是在ContentProvider还是在Application类中初始化Firebase? 2016年10月17日22:15
  • 2
    对于一小部分球员来说,我也遇到了同样的问题。使用最新的10.0.1 2017年1月6日7:58

38个答案38

重置为默认值
492

确保添加到rootlevel build.gradle

构建脚本{//。。。依赖项{//。。。classpath“com.google.gms:google-services:4.3.2”}}

然后,在模块级Gradle文件(通常为app/build.Gradle)中,在文件底部添加“应用插件”行,以启用Gradle插件:

应用插件:“com.android.application”机器人{//。。。}依赖关系{//。。。实现“com.google.firebase:firebase-core:9.6.1”//出现“找不到”错误?确保您已经//Android SDK管理器中最新的Google Repository}//把这个加到底部应用插件:“com.google.gms.google-services”

如中所述文档。在上面的问题中,当我忘记在我的毕业文件中添加这个时,我遇到了例外。

12
  • 检查,再检查。刚刚验证了我们对Gradle文件的描述。我应该提到,代码对很多个用户(共个)。 2016年10月17日13:19
  • 7
    apply-plugin:“com.google.gms.google-services”对我很有用。
    – 岩虾
    2016年12月11日8:15
  • 11
    对我的情况没有帮助。这个问题只影响极少数玩家。因此,很可能这不是代码或设置的问题,而是与用户设备上安装的游戏服务的互操作性的问题:-( 2017年1月6日8:00
  • 2
    谢谢:)我忘了在build.gradle:apply-plugin:'com.google.gms.google-services'中添加这一行
    – 超深
    2017年3月9日20:30
  • 为什么插件必须是最后一个? 2017年3月10日21:38
175

我不久前也遇到过同样的问题。

您正在尝试获取Firebase的实例而不进行初始化。在尝试在主函数或FutureBuilder中获取Firebase实例之前,请添加这行代码:

FirebaseApp.initializeApp();
18
  • @Henrik仅适用于ExtendedApplication.onCreate()。 2017年4月10日7:11
  • 6
    嗯,这对我来说不太管用(生产中仍有一些崩溃)。我将尝试将init代码添加到我的第一个Activity onCreate()。 2017年12月13日8:18
  • 124
    需要注意的是,除了此初始化之外,还必须按如下方式应用谷歌服务:应用插件:“com.google.gms.google-services” 2018年3月7日20:29
  • 我必须在哪个文件中添加此MainActivity.java? 2018年7月26日7:31
  • 26
    对我来说,com.google.gms:google-services:4.1.0版崩溃了,但com.googe.gms:谷歌服务:4.0.1版奏效了 2018年10月3日9:05
133

看起来谷歌服务:4.1.0有问题。要么将其降级为

classpath“com.google.gms:google-services:4.0.0”

或将其升级为

classpath“com.google.gms:google-services:4.2.0”

依赖项{类路径“com.android.tools.build:gradle:3.3.0-alpha08”classpath“com.google.gms:google-services:4.2.0”/*classpath“com.google.gms:google-services:4.1.0”<--这就是问题所在*/}

希望能有所帮助

6
  • 9
    这对我也很管用。4.1.0似乎有些问题 2018年9月7日8:19
  • 我刚刚也发现了这个问题,另外发现Android Studio 3.2中已经有一个针对Android SDK构建工具(Tools-->SDK Manager-->SDK Tools)的更新,应用这个更新可以让我使用classpath“com.google.gms:google-services:4.1.0”再一次。基督教青年会。 2018年9月26日20:58
  • 2
    天哪,我花了两周多的时间才把这个功能发挥出来,我所要做的就是从4.1.0降级到4.0.0?!?!?!谢谢你吨 2018年9月27日16:04
  • 4
    符合问题跟踪器将在4.2.0中固定
    – 库尔耶
    2018年11月6日11:29
  • 我刚刚将com.google.gms:google-services:4.1.0降级为om.google.gms:google-sservices:4.0.0,它很有效。它挽救了我的一天。
    – 茴香
    2019年2月13日14:42
78

更新(2024年2月19日):


我们知道不需要打电话FirebaseApp.initializeApp(本);任何手动位置。我们不应该也是。

可能性1:(旧方法):

看起来com.google.gms:谷歌服务:4.3.9有问题。

我们也可以升级它是为了

classpath“com.google.gms:google-services:4.3.10”

降级它是为了

classpath“com.google.gms:google-services:4.3.8”

依赖关系{classpath“com.android.tools.build:gradle:4.2.2”classpath'com.google.gms:google-services:4.3.9'//<--这就是问题所在}

可能性2: 更多信息。此处同时显示.kts和.gradle配置文件。

  • 在您的根级别(项目级别)Gradle文件(/build.Gradle.kts或/build.jradle),添加Google服务插件作为依赖项:
插件{//添加对谷歌服务Gradle插件的依赖id(“com.google.gms.google-services”)版本“4.4.1”应用false}
  • 在您的模块(applevel)Gradle文件(通常为//build.Gradle.kts或//build.Gradle),添加Google服务插件:
插件{//添加谷歌服务Gradle插件id(“com.google.gms.google-services”)}
  • 然后清洁的项目并再次运行。这对我很管用。

可能性3:

我也遇到了同样的问题,得到了一个意想不到的、奇怪的解决方案。

发件人这个答案是:

我删除了工具:node=“replace”Android清单.xml而且效果很好。

5
  • 9
    降级到classpath“com.google.gms:google-services:4.3.8”为我解决了这个问题。非常感谢!
    – Dan异常
    2021年8月9日9:13
  • 4
    从4.3.9降到4.3.8也帮我解决了这个问题,谢谢!我记得从4.0.x升级到4.1.0也有一个非常类似的问题,谷歌服务版本完全破坏项目的频率令人困惑。 2021年8月9日10:52
  • 降级是一个快速修复,刚刚更新了所有库。希望有一天我们在更新库时不会感到焦虑。
    – 构建3r
    2021年8月9日15:42
  • 1
    从4.3.9降级到4.3.8对我来说也很有效+1
    – 魔鬼10
    2021年8月10日8:12
  • 是的,在4.3.10中解决了-但多亏了所有人! 2021年8月10日13:06
61

我的应用程序/build.gradle文件

应用插件:“com.google.gms.google-services”

还有一次清洁的项目并再次运行。这帮我修好了。

0
18

首先需要添加com.google.gms:google-services:x.x.x根级别的build.gradle

构建脚本{存储库{jcenter()}依赖关系{类路径“com.android.tools.build:gradle:2.3.1”classpath“com.google.gms:google-services:3.0.0”//注意:不要在此处放置应用程序依赖项;他们属于//在单个模块build.gradle文件中}

}

之后,您需要在app/build.gradle上应用插件“com.google.gms.google-services”

依赖关系{编译文件树(dir:'libs',include:['*.jar'])androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2'{排除组:“com.android.support”,模块:“support-annotations”})编译“com.android.support:appcompat-v7:25.3.1”编译“com.android.support:design:25.3.1”编译“com.android.support:cardview-v7:25.3.1”编译'com.google.android.gms:play-services-gcm:9.8.0'编译'com.google.android.gms:play-services-maps:9.8.0'编译'com.google.android.gms:play-services-location:9.8.0'编译'com.google.firebase:firebase-message:9.8.0'testCompile“junit:junit:4.12”}应用插件:“com.google.gms.google-services”

如果你仍然有问题,那么你需要添加

FirebaseApp.initializeApp(本);

就在你打电话之前

FirebaseInstanceId.getInstance().getToken();
18
classpath“com.google.gms:google-services:4.1.0”

有问题。而是使用:

classpath“com.google.gms:google-services:4.2.0”
16

在更新了各种依赖项之后,我在编译中得到了一个Crashlytics错误,“Crashlytics发现了一个无效的API键:null。检查Crashlytics插件,确保已成功添加应用程序!联系人[电子邮件保护]寻求帮助。”我反复尝试[电子邮件保护]错误告诉你,Fabric和Crashlytics是单独的团队,所以他们无法帮助我。我避免了将额外的Fabric层实现到Crashlynics,并且无法从Fabric站点获取新密钥,甚至无法让站点识别我。在尝试通过从我的代码中删除Crashlytecs来解决这个问题时,我得到了“Default FirebaseApp is not initialized in this process com.example.app(默认FirebaseApp未在此过程中初始化)”。确保在运行时首先调用FirebaseApp.initializeApp(Context)崩溃。

我从未需要添加“FirebaseApp.initializeApp(this)”的初始化行,事实上,它被注释掉了。文档甚至提到,如果只对一个活动使用Firebase,则不需要这样做。添加它没有任何区别,仍然会出现运行终止错误。

原来是更新的google-services依赖性导致了新的模糊错误。目前,我没有时间花更多的时间来修复新依赖所导致的散弹枪错误,所以在有人提出解决方案之前,我会坚持使用旧版本。除了奇怪的初始化崩溃之外,新版本可能会强制Crashlytics用户使用Fabric。用户也被强制返回到旧的依赖版本:Crashlytics发现无效的API密钥:null。更新com.google.gms:google-services:4.1.0后

//com.google.gms:google-services:4.1.0坏com.google.gms:google服务:4.0.1/GOOD

编辑10/17/18:再次更新以下依赖项后

实现'com.google.firebase:firebase-ads:17.0.0'实现“com.google.firebase:firebase-auth:16.0.4”实现“com.google.firebase:firebase-database:16.0.3”实现'com.google.firebase:firebase-core:16.0.4

我在尝试安装时立即崩溃,并显示“xxx意外关闭”,就像我尝试谷歌服务依赖项更新时一样。在日志中,我找到了一个链接,指示我将其添加到清单中

<元数据android:name=“com.google.android.gms.ads.APPLICATION_ID”android:value=“ca-app-pub-xxxxxxx~xxxxxx”/>

这是新的,这里的设置和填隙说明中没有提到https://firebase.google.com/docs/android/setup还有这里https://developers.google.com/admob/android/istitual网站.

我过去只需要为我的应用程序处理一个与广告相关的ID,INTERSTITIAL_UNIT_ID。现在需要处理两个ID。除了上述添加,文档还指示在此处添加ADMOB_APP_ID(与新清单代码中的ads.APPLICATION_ID相同的编号)

MobileAds.initialize(此为ADMOB_APP_ID);

INTERSTITIAL_UNIT_ID和ADMOB_APP_ID ID可以在Google ADMOB控制台中找到。我的游戏应用程序在我第一次更新firebase依赖项时停止提供广告,但仍然不提供广告,在

公共void onAdFailedToLoad(int errorCode){。。。

即使在所有这些增加了混乱之后,如果没有初始化错误运行崩溃,我仍然无法更新google-services依赖项。我预计会在谷歌服务4.0.1上停留一段时间。

编辑10/24/18:自[电子邮件保护]经过数周关于更新后无法获得广告服务的通信:

“感谢您共享设备日志。从日志来看,这似乎是一个现有问题,这是我们优先考虑的问题,我们的团队正在进行修复,而这只发生在Android O和P设备上。”

仅限O和P设备?这是最后两个版本,O于2017年9月25日发布。伊克斯。

更新8/8/21:在将google-services从4.3.8更新到4.3.9之后,我突然又遇到了近3年前的问题,尽管我确实调用了初始化(尽管据称不需要)。将不得不再次延迟更新实施:

//com.google.gms:google-services:4.3.9坏com.google.gms:谷歌服务:4.3.8/GOOD
2
  • 我也经历过这种情况。希望谷歌不会在每次推送更新时破坏我的应用程序构建。
    – 帕蒂·P
    2018年10月4日20:27
  • 嗨,我通过添加应用插件:“com.google.gms.google-services”在我的build.gradle中(使用谷歌服务:4.1.0) 2018年10月15日22:39
13

2024年解决方案

我在2024年创建了Android项目,这与其他答案略有不同。

  1. 你不需要打电话FirebaseApp.initializeApp(此)你自己
  2. 你不需要<uses-permission android:name=“android.permission.INTERNET”/>
  3. 转到项目的build.gradle并添加id“com.google.gms.google-services”版本“4.3.15”应用false在下面插件{
  4. 转到模块的build.gradle并添加id“com.google.gms.google-services”在下面插件{
2
  • 我的最新版本4.4.1仍然存在相同的问题。你有什么解决办法吗? 4月2日17:45
  • 步骤3现在是别名(libs.plugins.gms.google.services)apply false gms-google-services={id=“com.google.gms.gougle-services”,version.ref=“googleServices”}googleServices=“4.4.1”步骤4现在是别名 5月26日4:49
10

正如@PSIXO在评论中提到的,这可能是谷歌服务依赖版本的问题。对于我的改变,

构建脚本{//。。。依赖关系{//。。。classpath“com.google.gms:google-services:4.1.0”}}

构建脚本{//。。。依赖关系{//。。。classpath“com.google.gms:google-services:4.0.1”}}

工作。4.1.0版本可能存在一些问题。因为我在这上面浪费了很多时间,所以我想写下这个作为答案。

2
  • 1
    对我来说,它通过将构建版本更改为4.0.1而起作用。这可能是一些依赖性问题 2018年11月22日5:11
  • 4
    在将所有版本更新到最新版本(4.2.0)后,这为我解决了问题 2018年12月10日23:11
9

对我来说,问题是我没有在app/build.gradle文件中添加这一行。

应用插件:“com.google.gms.google-services”
8

如果您正在使用FirebaseUI,不需要属于FirebaseApp.initializeApp(本);在您的代码中样品.

确保将添加到您的根水平build.gradle(建筑等级):

构建脚本{存储库{谷歌()jcenter()}依赖关系{...classpath“com.google.gms:google-services:3.1.1”...}}

然后,在您的模块级分级文件:

依赖关系{...//1-需要自动初始化Firebase(魔法线)实现“com.google.firebase:firebase-core:11.6.2”//2-FirebaseAuth的FirebaseUI(或任何您需要的…)实现'com.firebaseui:firebase-ui-auth:3.1.2'...}应用插件:“com.google.gms.google-services”

就这样。不需要更多。

6

您需要在中添加Firebase Gradle buildscript依赖项build.gradle(项目级)

classpath“com.google.gms:google-services:3.1.0”

并为Gradle添加Firebase插件应用程序/build.gradle

应用插件:“com.google.gms.google-services”build.gradle将包括这些新的依赖项:编译'com.google.firebase:firebase数据库:11.0.4'

来源:Android Studio Assistant

6

在我的例子中,谷歌服务分级插件没有生成所需的值.xml文件来自谷歌服务.json文件。Firebase库使用这个生成的值文件来初始化自己,如果找不到值文件,它似乎不会抛出错误。检查值文件是否存在于以下位置,并使用您的谷歌服务.json文件:

app/build/generated/res/google-services/{buildtype}/values/values.xml

和/或

app/build/generated/res/google-services/{flavor}/{buildtype}/xml/globaltracker.xml

有关更多详细信息,请参见:https://developers.google.com/android/guides/google-services-plugin

我的特殊情况是由于使用了一个对于我正在运行的Android Studio版本来说过于高级的gradle tools版本(即确保您使用Android Studio v3.2运行grade tools v3.2.X-YYY)。

5

另一个可能的解决方案是,如果您使用的是Beta,请尝试不同的Android Studio。帮了我一个忙。新的Android Studio根本没有正确添加Firebase。在我的案例中,3.3预览

经过更多的调查,我发现问题是新的Android工作室使用更新的谷歌服务版本启动项目,看起来这是最初的问题。正如@Ammar Bukhari所说,这一变化有所帮助:

classpath“com.google.gms:google-services:4.1.0”->classpath“com.google.gms:google-services:4.0.0”

0
4

我猜谷歌服务和firebase版本之间存在兼容性问题。

我在Project的build.gradle文件中更改了依赖项

classpath“com.google.gms:google-services:4.1.0”到4.2.0

然后将模块的build.gradle依赖项更新为:

实现“com.google.firebase:firebase-database:16.0.6”

实现“com.google.firebase:firebase-core:16.0.7”

一切都像魔咒一样运行,无需键入FirebaseApp.initializeApp(this);

1
  • 我在将com.google.firebase:firebase-core:16.0.8降级为com.googe.firebasce:firebase-core:16.0.7后解决了我的问题,谢谢
    – 南达Z
    2019年4月26日17:17
4

发生这种情况的原因之一可能是忘记添加android权限。互联网中的权限Android清单.xml

<uses-permission android:name=“android.permission.INTERNET”/>

发生这种情况的原因是com.google.gms:谷歌服务版本。当我使用4.1.0,我也遇到了同样的错误。然后我降级了版本。之前

类路径“com.android.tools.build:gradle:3.3.0”classpath“com.google.gms:google-services:4.1.0”

之后

类路径“com.android.tools.build:gradle:3.3.0”classpath“com.google.gms:google-services:3.2.0”

希望它能解决这个错误。

如果您最近将Android Studio更新为3.3.1,但com.google.gms:google-services(见4.2.0)依赖项有问题,请将com.googe.gms:谷歌服务更新为4.2.0。

依赖关系{classpath“com.android.tools.build:gradle:3.3.1”类路径'com.google.gms:google服务:4.2.0'}

对我来说,这是在升级com.google.gms:build.gradle内部的谷歌服务的依赖项

构建脚本{存储库{jcenter()mavenCentral()马文{url'https://maven.google.com/'名称“谷歌”}谷歌()}依赖关系{类路径“com.android.tools.build:gradle:33.2”classpath“com.google.gms:google-services:4.2.0”//注意:不要在此处放置应用程序依赖项;他们属于//在单个模块build.gradle文件中}
2

适用于最新的android工作室和sdk

---->在内部添加此行插件{}属于构建:gradle(:app)

id“com.google.gms.google-services”
2

在gradle模块文件中添加

插件{...id:'com.google.gms.google-services'}

验证firebase中的最新版本并添加gradle项目文件。

例如,当前版本是

构建脚本{依赖关系{classpath“com.google.gms:google-services:4.3.15”}}
1

按照@Gabriel Lidenor的回答,用上下文初始化应用程序在我的情况下是行不通的。如果您试图在没有google-service.json的情况下创建firebase-app,该怎么办?因此,在初始化任何数量的firebase应用程序之前,首先需要将其初始化为;

FirebaseOptions选项=新的FirebaseOptions。Builder().setApplicationId(“APP_ID”).setGcmSenderId(“SENDER_ID”).build();FirebaseApp.initializeApp(上下文,选项,“[DEFAULT]”);
1
  • 我们需要将这些代码行放在哪里?
    – 米_达
    2022年9月1日23:35
1

在我的案例中,我在build gradle(app)中停用了服务,如下所示:

android.application变体.all{变体->defgoogleTask=tasks.findByName(“process${variant.name.capitalie()}GoogleServices”)googleTask.enabled=“模拟”!=variant.flavor名称}

由于此变体仅用于测试和模拟服务,因此被停用。近两年来,这并没有给我带来任何问题。当我在gradle文件中注意到它的时候,有点像掌纹。。。

如果您也这样做,只需删除它。

1

我也有同样的问题。这个代码已经解决了。

FirebaseOptions选项=新的FirebaseOptions。建筑商().setProjectId(“YOUR_PROJECT_ID”).setApplicationId(“YOUR_APPLICATION_ID”).setApiKey(“YOUR_API_KEY”).build();FirebaseApp.initializeApp(this,options);

您可以从Firebase控制台/项目设置页面读取变量。

我什么都试过了,其他的建议都帮不了我。

0
1

改变

classpath“com.google.gms:google-services:4.4.1”

收件人

classpath“com.google.gms:google-services:4.3.8”

内部项目级build.gradle

0

虽然使用手动初始化FirebaseFirebaseApp.initializeApp(本);使错误消失,无法解决根本原因,一些奇怪的问题似乎没有解决,例如

  • FCM要求com.google.android.c2dm.许可。接收许可,其中仅适用于GCM
  • 在第一次发送通知后,令牌变为未注册
  • 消息未接收/onMessageReceived()从未被调用,

使用更新的Gradle插件(例如Android插件2.2.3和Gradle 2.14.1)修复了所有问题。(当然,设置必须按照Firebase文档)

1
  • 哇,这是一些有趣的信息。由于这个问题发生在这么少的人身上,很难说我们是否见过这种情况。也许我们应该再次尝试删除它并使用较新的Gradle版本。 2017年8月16日7:18
0

我的问题没有通过这个程序解决

FirebaseApp.initializeApp(本);

所以我尝试了其他方法,现在我的firebase已经成功初始化。尝试添加以下应用程序内模块.radle

生成脚本{依赖项{。。类路径:“com.google.firebase:firebase-plugins:1.1.5”..}}依赖项{。。。实现:“com.google.firebase:firebase-perf:16.1.0”实现:“com.google.firebase:firebase-core:16.0.3”..}
0

通过Android Studio工具安装Firebase。。。火力基地。。。

我通过Android Studio的内置工具进行了安装(遵循Firebase的最新文档)。这安装了基本的依赖项,但当我尝试连接到数据库时,总是会出现错误,我需要先调用initialize,即使我是:

在此过程中未初始化默认的FirebaseApp。确保首先调用FirebaseApp.initializeApp(Context)。

无论我做什么,我都会犯这个错误。

最后,在看到其中一个答案中的注释后,我将我的年级从4.1.0版更改为:

classpath“com.google.gms:google-services:4.0.1”

当我这么做的时候,我终于看到了一个对我有帮助的错误:

缺少文件google-services.json。谷歌服务插件没有它就无法运行。搜索位置:C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\src\nullnull\debug\google-services.json
C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\src\debug\nullnull\google-services.json
C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\src\nullnull\google-services.json
C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\src\debug\google-services.json
C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\src\nullnullDebug\google-services.json
C: \Users\%username%\AndroidStudioProjects\TxtFwd\app\google-services.json

这就是问题所在。看起来4.1.0版本没有给出构建错误,这是有原因的——没有提到您缺少google-services.json文件。我的应用程序中没有google-services.json文件,所以我出去添加了它。

但由于这是一次使用现有实时firsbase数据库的升级,我以前从未需要生成该文件。我去了firebase,生成并添加了它,它解决了这个问题。

更改回4.1.0

一旦我发现了所有这些,我就将类路径变量改回(到4.1.0)并重新构建,它再次崩溃,错误是尚未初始化。

根本问题

  • 使用4.1.0构建时,预编译时不会提供有效错误,因此您可能不知道发生了什么。
  • 按照4.1.0运行会导致初始化错误。
0

使用com.google.gms:google-services:4.0.1而不是4.1.0

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.