Android:由于firebase/com.google.Android.gms:play services授权版本冲突,无法解析GoogleSignInClient
除了为我的案例解决问题(这已经是超级棒了),我还对如何调试这类东西感兴趣(这不是我第一次遇到这类问题,解决它每次都很麻烦) 我的问题: 我希望我的用户能够在我的android应用程序中使用他们的google帐户登录并遵循(最新和最好的) 显然,这要求我具备:Android:由于firebase/com.google.Android.gms:play services授权版本冲突,无法解析GoogleSignInClient,android,firebase,gradle,google-authentication,Android,Firebase,Gradle,Google Authentication,除了为我的案例解决问题(这已经是超级棒了),我还对如何调试这类东西感兴趣(这不是我第一次遇到这类问题,解决它每次都很麻烦) 我的问题: 我希望我的用户能够在我的android应用程序中使用他们的google帐户登录并遵循(最新和最好的) 显然,这要求我具备: compile 'com.google.android.gms:play-services-auth:11.8.0' (…否则Android studio找不到GoogleSignInClient。) 现在痛苦开始了 一旦我重新同步gra
compile 'com.google.android.gms:play-services-auth:11.8.0'
(…否则Android studio找不到GoogleSignInClient。)
现在痛苦开始了
一旦我重新同步gradle,它就无法获得不同版本的
compile 'com.google.android.gms:play-services-auth:11.8.0'
及
(这两行是根据Android Studio的“指导”添加的,9.0.0版本是降级(见下文))
首先,Android studio抱怨com.google.firebase:firebase analytics,如果你调整它抱怨com.google.firebase:firebase core的版本,如果你调整它停止抱怨,但我在gradle构建时收到了这样一条好消息:
错误:任务“:myProject:ProcessDebuggGoogleServices”的执行失败。
请通过更新google services插件的版本(有关最新版本的信息,请访问)或将com.google.android.gms的版本更新为9.0.0来修复版本冲突
如果我这么做了,谷歌的客户端就再也找不到了
事实上,我不使用firebase(据我所知),所以禁用firebase已经是一个值得回答这个问题的解决方案
到目前为止,禁用插件并在my AndroidManifest.xml中设置:
<meta-data android:name="firebase_analytics_collection_deactivated" android:value="true" />
我的项目特定文件:
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android {
compileSdkVersion 25
buildToolsVersion '26.0.2'
defaultConfig {
applicationId "a.mystery"
minSdkVersion 16
targetSdkVersion 25
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
lintOptions {
abortOnError false
}
}
dependencies {
compile 'com.android.support:appcompat-v7:25.4.0'
compile 'com.android.support:support-v4:25.4.0'
compile 'ch.acra:acra:4.9.2'
compile 'com.google.android.gms:play-services-auth:11.8.0'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.koushikdutta.ion:ion:2.+'
compile('com.googlecode.json-simple:json-simple:1.1.1') {
exclude group: 'org.hamcrest', module: 'hamcrest-core'
}
compile 'com.google.firebase:firebase-analytics:9.0.0'
compile 'com.google.firebase:firebase-core:9.0.0'
}
这显然是对我问题的回答: 应该在下面
compile 'com.google.android.gms:play-services-auth:11.8.0'
我还评论说:
//compile 'com.google.firebase:firebase-analytics:9.0.0'
//compile 'com.google.firebase:firebase-core:9.0.0'
另一个依赖性问题以另一种不同的方式解决
(如果对这类东西进行一般调试作为回答,我同意,我真的很讨厌这类问题,似乎没有解决这些问题的一般方法,我的build.gradle文件不断乱扔是我的印象…你应该在你的应用程序build.gradle文件的底部添加这一行:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
mavenCentral()
jcenter()
maven {
url "https://maven.java.net/content/groups/public/"
}
maven {
url "https://maven.google.com"
}
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.google.gms:google-services:3.1.1'
}
}
allprojects {
repositories {
mavenCentral()
google()
}
}
dependencies {
}
ext {
compileSdkVersion = 25
buildToolsVersion = '25.0.2'
}
apply plugin: 'com.google.gms.google-services'
并将您的firebase core依赖项更新至最新版本:
compile 'com.google.firebase:firebase-core:11.8.0'
我看到了对firebase分析的依赖。我认为这不存在,因为它没有显示在屏幕上
apply plugin: 'com.google.gms.google-services'
compile 'com.google.firebase:firebase-core:11.8.0'