所有gms / firebase库必须使用完全相同的版本。找到版本15.1.0,15.0.2,15.0.1,15.0.0。

时间:2018-05-06 07:52:02

标签: android firebase android-studio gradle android-studio-3.0

尝试在我的项目中实施Firebase。

Gradle文件:

apply plugin: 'com.android.application'

android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.ghaleh.myapplication"
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
     }


buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:support-media-compat:27.1.1'
implementation 'com.android.support:support-v4:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-  core:3.0.2'
implementation 'com.google.firebase:firebase-messaging:15.0.2'
}
apply plugin: 'com.google.gms.google-services'

我收到了这个错误:

All gms/firebase libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 15.1.0, 15.0.2, 15.0.1, 15.0.0. Examples include com.google.firebase:firebase-iid:15.1.0 and com.google.android.gms:play-services-measurement-base:15.0.2

根据Google's Maven Repositoryfirebase-messaging的最新版本为15.0.2,我在firebase-iid:15.1.0收到错误 因此,我无法将firebase-messaging升级到更高版本或实施firebase-iid:15.1.0以匹配版本。

我已尝试过此处推荐的其他解决方案:123但不使用它们。

我也试过这个(但它似乎不是一个合适的解决方案):

implementation ('com.google.firebase:firebase-messaging:15.0.2') {
    exclude group: "com.google.android.gms"
}

我收到此错误:

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForBazaarDebug'.
java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

提前致谢。

2 个答案:

答案 0 :(得分:20)

您需要更新google-service插件才能使用:

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

能够避免这些错误,也升级到android studio 3.1

  

如果您没有使用Android Studio 3.1开发应用程序,则需要升级才能在IDE中获得正确的版本检查行为。

更多信息和要遵循的步骤:

Announcing new SDK versioning

Compilation failed to complete:Program type already present: com.google.android.gms.internal.measurement.zzabn

答案 1 :(得分:0)

您可能需要更新

1.Playservice library
2.build tools
3.gradle wrapper
4.AndroidStudio
5.Migration to androidX
6.build tool version
  

做完这些东西后,我终于有了一个合适的构建!!!