You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle依赖冲突:play-services包与ads-identifier 15.0.1版本冲突求助

解决GMS依赖冲突:移除或统一play-services-ads-identifier版本

我来帮你搞定这个困扰的依赖冲突问题!你遇到的情况是play-services-ads-identifier被location或analytics间接引入,且版本和你指定的15.0.0不一致,导致运行时异常。下面是两种可行的解决方案:

方案1:强制统一ads-identifier版本(推荐)

既然你所有GMS核心库都用的15.0.0版本,直接显式指定ads-identifier的版本为15.0.0,Gradle会自动统一依赖版本,避免冲突。在你的build.gradle(Module级别)的dependencies块中添加:

implementation 'com.google.android.gms:play-services-ads-identifier:15.0.0'

这种方法最稳妥,因为不会意外移除可能被依赖的功能,同时彻底解决版本不一致的问题。

方案2:排除自动引入的ads-identifier依赖

如果你确认你的项目完全不需要ads-identifier的功能,可以直接从依赖树中排除它。首先通过Gradle命令查看依赖来源:

./gradlew app:dependencies

(或者在Android Studio中通过View > Tool Windows > Gradle > [你的项目名] > Tasks > android > dependencies查看依赖树)

找到引入ads-identifier的父依赖(比如play-services-location或play-services-analytics),然后在对应的依赖声明中添加排除规则:

// 假设是location引入的,就在location依赖中排除
implementation('com.google.android.gms:play-services-location:15.0.0') {
    exclude group: 'com.google.android.gms', module: 'play-services-ads-identifier'
}

// 如果是analytics引入的,就在analytics依赖中排除
implementation('com.google.android.gms:play-services-analytics:15.0.0') {
    exclude group: 'com.google.android.gms', module: 'play-services-ads-identifier'
}

验证是否生效

修改后同步Gradle,再运行依赖查看命令,确认ads-identifier的版本已经统一为15.0.0,或者已经从依赖树中消失,之后重新编译发布版本即可解决运行时异常。

内容的提问来源于stack exchange,提问作者Aviran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:14:30