Android同步失败:无法找到com.google.android.gms:play-services-auth:15.1.0
com.google.android.gms:play-services-auth:15.1.0的问题 嘿,我看你遇到了Gradle拉取不到Play Services Auth依赖的问题,结合你的错误日志和build配置,核心问题出在版本兼容性不匹配,还有一些仓库配置的小细节需要调整。下面是一步步的修复步骤:
1. 先搞定Firebase UI Auth和核心依赖的版本冲突
你现在用的com.firebaseui:firebase-ui-auth:2.3.0是个比较老的版本,它只支持Firebase/Play Services的11.8.0版本,但你引入的firebase-auth、play-services-auth都是15.1.0,版本完全不搭,这直接导致了依赖解析失败。
你得把Firebase UI Auth升级到和15.1.0兼容的版本,查了下对应表,4.3.1版本刚好适配15.1.0的Firebase依赖。修改你的build.gradle(Module:app)里的这行依赖:
// 把旧的firebase-ui-auth替换成这个 implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
2. 确保Google仓库的优先级正确
虽然你的项目级build.gradle已经配置了Google仓库,但建议把google()放在最前面,让Gradle优先从Google的官方仓库拉取依赖,避免去jcenter找不存在的版本。调整项目级build.gradle的allprojects部分:
allprojects { repositories { google() // 优先放最前面 jcenter() // 下面这个和google()是同一个仓库,留着也没关系,删掉也可以 // maven { url "https://maven.google.com" } } }
3. 升级Google Services插件版本
你当前用的com.google.gms:google-services:3.3.0版本太老了,对15.x版本的Firebase支持不太好。建议升级到4.3.10这个稳定版本,修改项目级build.gradle的buildscript依赖:
classpath 'com.google.gms:google-services:4.3.10'
4. 清理并重新同步项目
改完上面这些,记得做这几步:
- 点击Android Studio顶部的「File -> Sync Project with Gradle Files」同步一下
- 如果还是有问题,先执行「Build -> Clean Project」,再「Build -> Rebuild Project」
最后给你贴一下修改后的关键代码片段:
修改后的build.gradle(Module:app)依赖部分:
dependencies { // 其他依赖保持不变 implementation 'com.google.firebase:firebase-auth:15.1.0' implementation 'com.google.android.gms:play-services-auth:15.1.0' implementation 'com.google.firebase:firebase-messaging:15.1.0' // 升级后的Firebase UI Auth implementation 'com.firebaseui:firebase-ui-auth:4.3.1' }
修改后的项目级build.gradle:
buildscript { repositories { google() jcenter() maven { url 'https://maven.fabric.io/public' } } dependencies { classpath 'com.android.tools.build:gradle:3.1.2' // 也可以考虑升级到3.2.1,兼容性更好 classpath 'com.google.gms:google-services:4.3.10' } } allprojects { repositories { google() jcenter() } }
这样调整后,Gradle应该就能顺利找到你需要的play-services-auth:15.1.0依赖了,核心就是把不兼容的Firebase UI版本换掉,再优化仓库配置~
内容的提问来源于stack exchange,提问作者Alex B

