159

When compiling my project I get the following error message:

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)}

or

D8: Program type already present: com.google.android.gms.internal.measurement.zzabo

With the following stacktrace in the Gradle Log

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
Peter Haddad
  • 78,874
  • 25
  • 140
  • 134
Jack Wilson
  • 6,065
  • 12
  • 29
  • 52

8 Answers8

166

Firebase did an update to the SDK:

Firebase Android SDKs now have independent version numbers, allowing for more frequent, flexible updates.

Update all your Firebase dependencies to use the latest version:

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

More information is here:

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

Please also update google-services plugin:

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

You can find the latest google-services clicking HERE

Also check this link to understand the changes and follow the steps listed in the article:

Announcing the new SDK Versioning

EDITED ON: 27 NOVEMBER 2019

As of today, the latest version for google-services Plugin is 4.3.3. So, your dependency would look like

classpath 'com.google.gms:google-services:4.3.3'
sakuraso13
  • 184
  • 1
  • 8
Peter Haddad
  • 78,874
  • 25
  • 140
  • 134
  • 31
    It works! Why did the previous Firebase version suddenly cause build failures anyway? – Alvin Rusli May 03 '18 at 08:01
  • 2
    Thanks a lot. Also there are a compilation problem if use firebase-invites version **15.0.2** at moment( as noticed in the link,provided above) usage of `com.google.firebase:firebase-invites:15.0.0` fixed issue for me – Jackky777 May 03 '18 at 10:08
  • 1
    Similar symptom, fixed by updating the version of com.google.gms:google-services in the project gradle file to 3.3.0 – JulianSymes May 03 '18 at 10:11
  • 2
    for reference also, this article was released in the last hour to explain the changes: [Announcing new SDK versioning](https://android-developers.googleblog.com/2018/05/announcing-new-sdk-versioning.html) – Peter Haddad May 03 '18 at 18:37
  • @PeterHaddad thank you for the excellent answer. Could we update the answer to also recommend `google-services` plugin version `3.3.0` which will also improve the error messages? – Sam Stern May 04 '18 at 18:20
  • 1
    @SamStern I have updated the answer with the required information (if anything is missing feel free to update it) – Peter Haddad May 04 '18 at 18:28
  • 1
    While that answer is correct, the root cause is that _transitive_ dependencies are updated without any warning or notice if you already have `15.0.0` as dependency. This is uncommon for Java projects because it results in non-hermetic builds. While updating current projects work, _old_ builds will now probably be broken forever which is very bad. If you want reproducible, hermetic builds then you are currently forced to lock the entire dependency tree yourself currently using a plugin, until Gradle has this added as a core feature. – botteaap May 04 '18 at 19:07
  • It doesn't works when databinding is enabled. https://issuetracker.google.com/issues/79122163 – Aryan Najafi May 05 '18 at 08:27
  • @PeterHaddad doesn't work - have all the latest libs and play-services 3.3.0/.1. I've been struggling with making the app build for last 2 days, extremely buggy irritating release – khusrav May 14 '18 at 06:07
  • @khusrav did you update android studio to version 3.1? – Peter Haddad May 14 '18 at 06:08
  • @PeterHaddad I basically use beta from canary - 3.2.x. But have also stable 3.1 - both don't work – khusrav May 14 '18 at 06:09
  • @khusrav What error are you getting? Did you clean and build? – Peter Haddad May 14 '18 at 06:18
37

In my case problem is same.I followed below steps:

1.build.gradle(gradle)

change :

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

To :

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

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'

for google location and places :

  implementation 'com.google.android.gms:play-services-location:15.0.1'
  implementation 'com.google.android.gms:play-services-places:15.0.1'
Community
  • 1
  • 1
Rohan Lodhi
  • 1,385
  • 9
  • 24
  • 2
    Strange that `firebase Lib Version != playServices Lib version` – NickUnuchek May 04 '18 at 14:50
  • Google now has separate lins versions. you may check actual Firebase versions here https://firebase.google.com/support/release-notes/android#20180508 and Play Services here https://developers.google.com/android/guides/setup – Artem Mostyaev Jun 08 '18 at 14:12
20

The problem is caused because Firebase started versioning the libraries separately. Updating everything to latest version solves the issue.

Update the google play gradle plugin version to latest version, currently 4.0.1.

In project level build.gradle file:

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

Information about latest version of google gradle plugin is available at:

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

And use the latest versions of individual libraries in app level build.gradle file:

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'

Information about latest versions of individual libraries available at:

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

Nabin Bhandari
  • 15,949
  • 6
  • 45
  • 59
5

For those who are facing this issue with the latest Firebase versions as today Nov 8th, 2018. I fixed the conflict by downgrading the firebase-ads library while keeping the rest using the latest versions.

I changed from:

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"

Also, note that on the Project's root build.gradle I'm using the following google services version com.google.gms:google-services:4.2.0.

I tried a few approaches, analyzing the dependencies tree, excluding the modules with the mentioned program, but they ended up crashing on runtime. The safest solution I found was using the 15.0.1 for the firebase-ads

Benny
  • 1,650
  • 17
  • 20
3

Latest Firebase SDK versions

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

Update - June 21, 2018

Cloud Firestore version 17.0.2

gRPC requirement updated from 1.8.0 to 1.12.0. This allows quicker failover between Wi-Fi and cellular networks.

Invites version 16.0.1

Fixed incompatibility with firebase-core 16.0.1.

AskNilesh
  • 67,701
  • 16
  • 123
  • 163
  • com.google.firebase:firebase-ads:16.0.0 this doesnt exist, seems to still be 15.0.1 for me – SammyT May 30 '18 at 09:03
  • 1
    @SammyT yes thank u i have updated my answer When i hve checked documentation there `com.google.firebase:firebase-ads:16.0.0` is available – AskNilesh May 30 '18 at 09:11
2

The above error has appeared today after rebuilding application, as if the new update to classpath: 'com.google.gms:google-services:3.1.0' to

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

has helped solving my problem.

In addition, other answers mentioned in this post may also help, it depends on the version of google com.google.firebase packages used, i tried to update firebase packages to their latest version. Also you may refer to the following question and get help from the answers mentioned.

Also i have added the following to the project gradle file in the repositories section

maven{
url  "https://dl.bintray.com/android/android-tools"
}
Cedar
  • 303
  • 1
  • 13
0

Please upgrade classpath of build gradle and google services as follows

    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.google.gms:google-services:3.3.0'
Vinil Chandran
  • 1,563
  • 1
  • 19
  • 33
0

1. Update google.gms version to latest version

At the time of answer latest is 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. Update firebase dependencies to latest version

Update below dependency if you use any. Note that firebase has individual versions for every dependency now.

Use latest Firebase Libraries. At the time of answer latest versions are below.

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. Don't forget google plugin

Also don't forget to add apply plugin: 'com.google.gms.google-services' at bottom of app level build.gradle.

Sync and Build...

Khemraj Sharma
  • 57,232
  • 27
  • 203
  • 212