在Android中集成Google日历API和一个信号时出现Gradle错误
我正在一个Android项目中工作,我正在将Google日历API和一个信号集成到同一个项目中。该项目已经有一个通知信号。现在,我正在遵循谷歌指南,以集成谷歌日历API。我被困在第4步:a。我添加了渐变 依赖项被写入我的gradle文件,但现在我得到了错误在Android中集成Google日历API和一个信号时出现Gradle错误,android,android-gradle-plugin,android-calendar,onesignal,google-calendar-api,Android,Android Gradle Plugin,Android Calendar,Onesignal,Google Calendar Api,我正在一个Android项目中工作,我正在将Google日历API和一个信号集成到同一个项目中。该项目已经有一个通知信号。现在,我正在遵循谷歌指南,以集成谷歌日历API。我被困在第4步:a。我添加了渐变 依赖项被写入我的gradle文件,但现在我得到了错误 Warning:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (1.3.9) and test app (2.0.1
Warning:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (1.3.9) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.
Error:Execution failed for task ':app:prepareDebugAndroidTestDependencies'.
> Dependency Error. See console for details.
All com.google.android.gms libraries must use the exact same version
specification(mixing versions can lead to runtime crashes). Found versions
10.2.0,10.0.1.
这是我当前的gradle文件
应用插件:“com.android.application”
android {
compileSdkVersion 23
buildToolsVersion '23.0.3'
defaultConfig {
applicationId "com.example.user.icpdonline"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders=[onesignal_app_id: "b9389676-61e9-4622-a6f2-5b72e089c2ff",
onesignal_google_project_number:"icpd-online-one-signal"]
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:support-v4:23.4.0'
testCompile 'junit:junit:4.12'
compile 'com.onesignal:OneSignal:3.+@aar'
compile 'com.google.android.gms:play-services-gcm:+'
compile "com.google.android.gms:play-services-location:+"
compile 'com.google.android.gms:play-services-auth:10.0.1'
// compile 'com.google.android.gms:play-services-auth:10.2.0'
compile 'pub.devrel:easypermissions:0.2.1'
compile( 'com.google.api-client:google-api-client-android:1.22.0'){
exclude group: 'org.apache.httpcomponents'
}
compile('com.google.apis:google-api-services-calendar:v3-rev234-1.22.0'){
exclude group: 'org.apache.httpcomponents'
}
}
错误在线路上
compile 'com.google.android.gms:play-services-gcm:+'
当我将鼠标悬停在它上面时,它显示错误
Warning:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (1.3.9) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.
Error:Execution failed for task ':app:prepareDebugAndroidTestDependencies'.
> Dependency Error. See console for details.
All com.google.android.gms libraries must use the exact same version
specification(mixing versions can lead to runtime crashes). Found versions
10.2.0,10.0.1.
我理解这个错误的意思,但我不知道如何修复它。我曾尝试将版本添加到gcm行的末尾,但没有效果。我似乎在任何地方也找不到答案。请帮我解决这个问题。您所有的Google Play Services库com.Google.android.gms:Play Services xxx'都应该使用相同的版本 改变这个
compile 'com.google.android.gms:play-services-gcm:+'
compile "com.google.android.gms:play-services-location:+"
对此
compile 'com.google.android.gms:play-services-gcm:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
在应用程序build.gradle中添加android{configurations.all{resolutionStrategy.force'com.google.code.findbugs:jsr305:1.3.9'}。然而,原来的问题得到了回答。为了让未来的新来者明白这一点,请在你的应用程序build.gradle add
android{configurations.all{resolutionStrategy.force'com.google.code.findbugs:jsr305:1.3.9}中创建一篇带有新错误的新帖子,而不是用不同错误编辑原始帖子。然而,原来的问题得到了回答。为了让未来的新来者明白这一点,请不要用不同的错误编辑原始帖子,而是用新的错误创建一个新帖子。嘿,这正是错误I。谢谢,现在用上面提到的修复方法修复了它。你能花点时间解释一下为什么这行代码修复了错误,这对以后的问题真的很有帮助。当然,上面的代码片段迫使Gradle使用相同的版本号编译应用程序和测试应用程序。您还可以使用2.0.1作为版本号。你能把答案标为已解决吗?谢谢