编译未能完成:程序类型已存在:com.google.android.gms.internal.measurement.zzabn

159

编译我的项目时出现以下错误消息:

Program type already present: com.google.android.gms.internal.measurement.zzabn Message{kind=ERROR, text=Program type already present: com.google.android.gms.internal.measurement.zzabn, sources=[Unknown source file], tool name=Optional.of(D8)}
或者
D8: Program type already present: com.google.android.gms.internal.measurement.zzabo

在Gradle日志中出现以下堆栈跟踪:

at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)     
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104)   
at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:212)\\nat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
at java.lang.Thread.run(Thread.java:745) Caused by: com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\0.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\4.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\6.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\7.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\8.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\9.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\10.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\12.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\13.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\14.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\17.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\18.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\19.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\20.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\21.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\22.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\23.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\24.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\25.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\26.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\27.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\28.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\29.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\30.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\31.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\32.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\34.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\39.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\40.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\44.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\45.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\46.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\47.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\48.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\49.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\51.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\52.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\53.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\55.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\56.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\57.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\58.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\59.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\83.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\84.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\85.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\86.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\87.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\88.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\89.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\90.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\91.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\92.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\93.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\94.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\95.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\96.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\97.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\100.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\101.jar
at com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.java:124)
at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:109)
at com.android.build.gradle.internal.transforms.DexMergerTransformCallable.call(DexMergerTransformCallable.java:101)
at com.android.build.gradle.internal.transforms.ExternalLibsMergerTransform.transform(ExternalLibsMergerTransform.kt:123)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:221)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:217)
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102)   ... 48 more Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete
at com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.java:76)
at com.android.tools.r8.utils.ExceptionUtils.withD8CompilationHandler(ExceptionUtils.java:45)
at com.android.tools.r8.D8.run(D8.java:67)
at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:107)  ... 53 more Caused by: com.android.tools.r8.utils.AbortException
at com.android.tools.r8.utils.Reporter.failIfPendingErrors(Reporter.java:77)
at com.android.tools.r8.utils.Reporter.fatalError(Reporter.java:58)
at com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.java:67)     ... 56 more

1
相同的错误,程序类型已经存在:com.google.android.gms.internal.measurement.zzabn。 - Kota1921
同样的错误在这里,程序类型已经存在:com.google.android.gms.internal.measurement.zzabn。 - Kasim Rangwala
请将 Google Play 服务和 Firebase 版本降级至 12.0.1。 - Hanhan
8个回答

166

Firebase 更新了它的 SDK:

现在 Firebase Android SDK 有独立的版本号,可以更频繁、灵活地更新。

请将所有的 Firebase 依赖项更新到最新版本:

Firebase Core           com.google.firebase:firebase-core:15.0.2
Ads                     com.google.firebase:firebase-ads:15.0.0
Analytics               com.google.firebase:firebase-analytics:15.0.2
App Indexing            com.google.firebase:firebase-appindexing:15.0.0
Authentication          com.google.firebase:firebase-auth:15.1.0
Cloud Firestore         com.google.firebase:firebase-firestore:16.0.0
Cloud Functions         com.google.firebase:firebase-functions:15.0.0
Cloud Messaging         com.google.firebase:firebase-messaging:15.0.2
Cloud Storage           com.google.firebase:firebase-storage:15.0.2
Crash Reporting         com.google.firebase:firebase-crash:15.0.2
Crashlytics             com.crashlytics.sdk.android:crashlytics:2.9.1
Invites                 com.google.firebase:firebase-invites:15.0.1
Performance Monitoring  com.google.firebase:firebase-perf:15.1.0
Realtime Database       com.google.firebase:firebase-database:15.0.0
Remote Config           com.google.firebase:firebase-config:15.0.2

更多信息请参考:

https://firebase.google.com/support/release-notes/android

还请更新google-services插件:

classpath 'com.google.gms:google-services:3.3.1'

您可以点击此处找到最新的 google-services。

另外,请查看以下链接以了解更改并按照文章中列出的步骤执行:

宣布新的 SDK 版本控制

编辑于:2019年11月27日

截至今天,google-services 插件的最新版本是 4.3.3。因此,您的依赖关系应如下所示:

classpath 'com.google.gms:google-services:4.3.3'

31
它可以工作!但为什么之前的Firebase版本突然导致构建失败呢? - Alvin Rusli
2
非常感谢。同时,如果使用firebase-invites版本15.0.2,目前存在编译问题(如上面提供的链接所示)。对我来说,使用“com.google.firebase:firebase-invites:15.0.0”解决了这个问题。 - Jackky777
1
类似的症状,通过将项目gradle文件中的com.google.gms:google-services版本更新为3.3.0来解决。 - JulianSymes
2
此处为纯文本翻译,请参考以下内容:此文章是最近时发布的,解释了新的软件开发工具包版本更改。[宣布新SDK版本](https://android-developers.googleblog.com/2018/05/announcing-new-sdk-versioning.html) - Peter Haddad
1
@SamStern 我已经更新了答案,并提供了所需的信息(如果有遗漏的地方,请随时更新)。 - Peter Haddad
显示剩余7条评论

37

在我的情况下问题是相同的。我按照以下步骤进行:

1. build.gradle(gradle)

更改为:

  classpath 'com.google.gms:google-services:3.2.0'

收件人:

  classpath 'com.google.gms:google-services:3.2.1'

2.build.gradle(module)

2.build.gradle(module)
    implementation 'com.google.firebase:firebase-core:15.0.2'
    implementation 'com.google.firebase:firebase-messaging:15.0.2'
    implementation 'com.google.android.gms:play-services-maps:15.0.1'

谷歌地点和位置:

  implementation 'com.google.android.gms:play-services-location:15.0.1'
  implementation 'com.google.android.gms:play-services-places:15.0.1'

2
奇怪的是 firebase Lib Version != playServices Lib version - NickUnuchek
Google现在有单独的Lins版本。您可以在此处检查实际的Firebase版本https://firebase.google.com/support/release-notes/android#20180508和Play Services https://developers.google.com/android/guides/setup。 - Artem Mostyaev

20

问题的原因是Firebase开始单独对库进行版本控制。将所有内容更新到最新版本可以解决该问题。

将Google Play Gradle插件版本更新为最新版本,目前是4.0.1

在项目级别的build.gradle文件中:

classpath 'com.google.gms:google-services:4.0.1'

最新版的Google Gradle插件信息可在以下链接获取:

https://bintray.com/android/android-tools/com.google.gms.google-services/

同时请在build.gradle文件中的应用级别添加最新版的各自独立库。

implementation 'com.google.android.gms:play-services-vision:15.0.2'
implementation 'com.google.android.gms:play-services-ads:15.0.1'
implementation 'com.google.firebase:firebase-messaging:15.0.2'

最新版本的各个库的信息可在以下网址查看:

https://firebase.google.com/support/release-notes/androidhttps://developers.google.com/android/guides/setup


2
com.google.gms:google-services:3.3.0 在运行时崩溃,但 3.2.1 版本正常工作。 - Mughil

5
对于那些在2018年11月8日遇到最新Firebase版本问题的人,我通过降级firebase-ads库来解决冲突,同时保持其余部分使用最新版本。
我从以下更改:
googleImplementation "com.google.firebase:firebase-core:16.0.5"
googleImplementation "com.google.firebase:firebase-ads:17.0.0"  //CONFLICTING VERSION
googleImplementation "com.google.firebase:firebase-config:16.1.0"
googleImplementation "com.google.firebase:firebase-messaging:17.3.4"

To:

googleImplementation "com.google.firebase:firebase-core:16.0.5"
googleImplementation "com.google.firebase:firebase-ads:15.0.1"  //WORKING VERSION
googleImplementation "com.google.firebase:firebase-config:16.1.0"
googleImplementation "com.google.firebase:firebase-messaging:17.3.4"

此外,请注意在项目的根目录下的build.gradle文件中,我正在使用以下google服务版本com.google.gms:google-services:4.2.0

我尝试过几种方法,分析依赖关系树,排除具有所提到程序的模块,但最终在运行时崩溃了。我找到的最安全的解决方案是对firebase-ads使用版本15.0.1


1
谢谢。这是目前可用的版本,使用了google-services:4.2.0。 - Kumar Bibek

3

Firebase SDK 最新版本

Service                     Gradle dependency

Firebase Core               com.google.firebase:firebase-core:16.0.1
Ads                         com.google.firebase:firebase-ads:15.0.1
Analytics                   com.google.firebase:firebase-analytics:16.0.0
App Indexing                com.google.firebase:firebase-appindexing:16.0.1
Authentication              com.google.firebase:firebase-auth:16.0.2
Cloud Firestore             com.google.firebase:firebase-firestore:17.0.2
Cloud Functions             com.google.firebase:firebase-functions:16.0.1
Cloud Messaging             com.google.firebase:firebase-messaging:17.0.0
Cloud Storage               com.google.firebase:firebase-storage:16.0.1
Crash Reporting             com.google.firebase:firebase-crash:16.0.0
Crashlytics                 com.crashlytics.sdk.android:crashlytics:2.9.3
Invites                     com.google.firebase:firebase-invites:16.0.1
ML Kit: Model Interpreter   com.google.firebase:firebase-ml-model-interpreter:16.0.0
ML Kit: Vision              com.google.firebase:firebase-ml-vision:16.0.0
ML Kit: Image Labeling      com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring      com.google.firebase:firebase-perf:16.0.0
Realtime Database           com.google.firebase:firebase-database:16.0.1
Remote Config               com.google.firebase:firebase-config:16.0.0

更新 - 2018年6月21日

Cloud Firestore 版本17.0.2

将 gRPC 要求从1.8.0更新到1.12.0。这可以更快地在Wi-Fi和蜂窝网络之间进行故障转移。

邀请版本16.0.1

修复与firebase-core 16.0.1不兼容的问题。


com.google.firebase:firebase-ads:16.0.0 这个不存在,对我来说似乎仍然是15.0.1。 - SammyT
1
@SammyT 是的,谢谢你。我已经更新了我的答案。当我查看文档时,发现com.google.firebase:firebase-ads:16.0.0是可用的。 - AskNilesh

2
在重新构建应用程序后,出现了上述错误,似乎将classpath: 'com.google.gms:google-services:3.1.0'更新到classpath: 'com.google.gms:google-services:3.2.0'有助于解决我的问题。此外,本帖中提到的其他答案也可能有所帮助,这取决于使用的google com.google.firebase软件包版本,我尝试将firebase软件包更新为最新版本。您还可以参考以下问题并从中获得帮助。同时,在存储库部分的项目gradle文件中添加了以下内容。
maven{
url  "https://dl.bintray.com/android/android-tools"
}

0
请按照以下方式升级构建Gradle和Google服务的类路径:

请升级构建Gradle和Google服务的类路径如下

    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.google.gms:google-services:3.3.0'

0

1. 将 google.gms 版本更新至 最新版本

回答时的最新版本为 4.1.0

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.1.0' // google-services plugin
    }
}

allprojects {
    // ...
    repositories {
        // ...
        google() // Google's Maven repository
    }
}

2. 将 Firebase 依赖项更新至 最新版本

如果您使用以下任何依赖项,请进行更新。 请注意,Firebase 现在为每个依赖项提供单独的版本。

请使用最新的 Firebase 库。在回答时,最新版本如下。

Firebase Core                com.google.firebase:firebase-core:16.0.3
Ads                          com.google.firebase:firebase-ads:15.0.1
Analytics                    com.google.firebase:firebase-analytics:16.0.3
App Indexing                 com.google.firebase:firebase-appindexing:16.0.1
Authentication               com.google.firebase:firebase-auth:16.0.3
Cloud Firestore              com.google.firebase:firebase-firestore:17.1.0
Cloud Functions              com.google.firebase:firebase-functions:16.1.0
Cloud Messaging              com.google.firebase:firebase-messaging:17.3.2
Cloud Storage   c            om.google.firebase:firebase-storage:16.0.2
Crash Reporting              com.google.firebase:firebase-crash:16.2.0
Crashlytics                  com.crashlytics.sdk.android:crashlytics:2.9.5
Dynamic Links                com.google.firebase:firebase-dynamic-links:16.1.1
Invites                      com.google.firebase:firebase-invites:16.0.3
In-App Messaging             com.google.firebase:firebase-inappmessaging:17.0.1
In-App Messaging Display     com.google.firebase:firebase-inappmessaging-display:17.0.1
ML Kit: Model Interpreter    com.google.firebase:firebase-ml-model-interpreter:16.2.0
ML Kit: Vision               com.google.firebase:firebase-ml-vision:17.0.0
ML Kit: Image Labeling       com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring       com.google.firebase:firebase-perf:16.1.0
Realtime Database            com.google.firebase:firebase-database:16.0.2
Remote Config                com.google.firebase:firebase-config:16.0.0

3. 别忘了 Google 插件

同时别忘记在应用级别的 build.gradle 文件底部添加 apply plugin: 'com.google.gms.google-services'

同步并构建...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接