未集成相关依赖却收到com.google.android.gms:play-services-maps SDK过时警告求助
排查与解决未直接集成却出现play-services-maps 12.0.1过时问题
问题根源
你没有直接添加该依赖,但第三方库的间接依赖会自动引入旧版本的play-services-maps,这是最常见的原因。很多第三方SDK(比如广告、统计、定位类)会依赖Google Play服务组件,可能无意中带入了过时的版本。
排查步骤
- 执行Gradle命令查看完整依赖树:
# macOS/Linux ./gradlew app:dependencies # Windows gradlew.bat app:dependencies - 在输出结果中搜索
com.google.android.gms:play-services-maps,找到对应的依赖路径,就能定位是哪个第三方库引入了旧版本。
解决方法
方法1:升级第三方库
找到引入旧依赖的第三方库,查看其官方文档或Maven仓库,升级到最新版本——通常新版本会更新内部依赖的Google Play服务版本,自动解决过时问题。
方法2:强制替换依赖版本
如果暂时无法升级第三方库,可在app模块的build.gradle中添加依赖版本强制策略,将play-services-maps替换为兼容的新版本(建议使用Google官方推荐的稳定版本,比如18.2.0):
configurations.all { resolutionStrategy { force "com.google.android.gms:play-services-maps:18.2.0" } }
方法3:排除第三方库中的旧依赖
针对特定第三方库,直接排除其依赖的play-services-maps,前提是该库不需要这个组件也能正常工作:
dependencies { implementation("第三方库的坐标") { exclude group: "com.google.android.gms", module: "play-services-maps" } }
验证
修改后重新执行./gradlew app:dependencies,确认play-services-maps的版本已更新或被排除,再重新打包上传即可。
内容的提问来源于stack exchange,提问作者Ajay gadadasu
相关产品推荐
相关产品推荐

