はじめに
未来には解決しているかもしれませんが
本日2018年11月10日、軽い気持ちでAndroidのFirebaseバージョンを最新版にあげたらビルドエラーになりました。
app.gradle
:
dependencies {
:
//Firebase
implementation 'com.google.firebase:firebase-core:16.0.5'
implementation 'com.google.firebase:firebase-ads:17.1.0'
implementation 'com.google.firebase:firebase-auth:16.0.5'
implementation 'com.google.firebase:firebase-config:16.1.0'
:

解決編
まずログ確認。
Program type already present: com.google.android.gms.internal.measurement.zzdz
というエラー。
依存関係ぽいので以下コマンドで依存関係を確認。
$ ./gradlew :app:dependencies > dependencies.txt
たしかにmeasurement関連で依存問題起きているっぽいのですが解決せず。
com.google.android.gms:play-services-measurement-base:[16.0.4] -> 16.0.4
:
com.google.android.gms:play-services-measurement-base:[16.0.3] -> 16.0.4
Webサイトで最新バージョンを確認しました。
Firebase Android Release Notes
https://firebase.google.com/support/release-notes/android#latest_sdk_versions

firebase-coreの最新版は16.0.5でなく16.0.4!
16.0.4にバージョンダウンしたらビルドエラーはなくなりました。
教訓
- AndroidStudioの警告に従っても最新版バージョンが合わないことがある
- ライブラリはリリースノートでバージョン確認する
- ライブラリのバージョンがわかるものをコメントに書くと良い
