Android接入谷歌广告 - 发现各种坑

先前接入谷歌广告Admob,功能完成后AS能运行,打包哩不行一直报
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/INotificationSideChannel$Stub$Proxy.class
整个工程都被找翻天了,都没有重复的哩,什么网上dependencies 查找依赖树的 我都用过了 没有重复的啊
废了点时间终于找到次要原因,是因为我的gradle版本太低了,才version 4.1
Gradle升到了5.4.1,然后插件改成3.5.1,
clean+rebuild下,过程有点久,可以喝杯下午茶了
好小子,rebuild最终结果就是找到重复的包了
 found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar(com.android.support:support-compat:28.0.0)
查了下原来是androidX和support之间依赖问题,反正androidX是趋势,就长痛不如短痛,直接搞起处理了

过程
1.一定Gradle要升级到5.4.1,build-tool改成3.5.1,毕竟要支持谷歌广告,如何升级百度就有的


2.所有的支持库一定要升级到28.0.0 这个一定要升级并且rebuild一下,是为了更好的接入AndroidX 因为这个包是最接近AndroidX的支持库,看看工程有无什么代码不兼容,先改了


3.右键工程→Refactor→Migrate to AndroidX…,如下图所示

4.最后点击Do Refactor,我是查了工程都需要改的样子,网上有些是有选择的更改,大家切合实际去选择
5.最后还有些没改好,比如

这些自己手动改一改,合理是不多的,最后rebuild成功,跑了起来了,还有gradle打包也成功了,开心!
大家也可以参考这位大哥的处理方式:
https://blog.csdn.net/lovedou0816/article/details/90481946
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值