问题描述
我已将OneSignal添加到App中,并且工作正常,但是当我添加时:
com.google.android.gms:play-services-ads:17.1.1
构建失败:Cannot fit requested classes in a single dex file (# methods: 70355 > 65536)
我搜索了一下,然后发现了这个https://stackoverflow.com/a/51088321,这表明了原因。
当我删除play-services-ads
时,此问题消失了。
我没有得到应排除的组或模块来解决此问题,我尝试了此操作但未解决问题:
implementation ('com.google.android.gms:play-services-ads:17.1.1'){
transitive = true
exclude group: "play-services-ads-identifier"
exclude group: "play-services-basement"
exclude group: "play-services-measurement-sdk-api"
exclude module: "play-services-measurement-base"
}
gradlew :app:dependencies
相关输出:
| +--- com.google.android.gms:play-services-ads-base:[17.1.1] -> 17.1.1
| +--- com.google.android.gms:play-services-ads-identifier:16.0.0 (*)
| +--- com.google.android.gms:play-services-ads-lite:[17.1.1] -> 17.1.1
| | +--- com.google.android.gms:play-services-ads-base:[17.1.1] -> 17.1.1
| | +--- com.google.android.gms:play-services-basement:16.0.1 -> 16.1.0 (*)
| | \--- com.google.android.gms:play-services-measurement-sdk-api:16.0.3
| | +--- com.google.android.gms:play-services-basement:16.0.1 -> 16.1.0 (*)
| | \--- com.google.android.gms:play-services-measurement-base:[16.0.4] -> 16.0.4 (*)
| +--- com.google.android.gms:play-services-basement:16.0.1 -> 16.1.0 (*)
| +--- com.google.android.gms:play-services-gass:[17.1.1] -> 17.1.1
| | +--- com.google.android.gms:play-services-ads-base:[17.1.1] -> 17.1.1
| | \--- com.google.android.gms:play-services-basement:16.0.1 -> 16.1.0 (*)
我使用17.1.1是因为minAPI是15。
我不想使用multidex支持,因为这不是解决方案。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)