Android12 升级

2021-11-03 00:27:29 +08:00
 00244396

各位大佬们,因为需求可能项目目标版本要升级到 Android12 ,但在适配过程中发现 Android12 需要显式的声明 android:exported 这个属性,但由于项目中依赖的库较多,分离的组件化工程中也依赖了一堆库,要求每一个都升级似乎不太现实,我又不想手动检查几百个组件是否显示添加,找到了一个 gradle 脚本似乎也不起作用: https://github.com/phamtdat/AndroidSnippets 菜逼面向搜索引擎已经到极限了(悲 ,大佬们有什么建议吗?

5334 次点击
所在节点    Android
3 条回复
lee1997
2021-11-03 18:54:25 +08:00
脚本遍历文件夹下面所有的 AndroidManifest.xml ,解析组件标签,插入 android:exported
shily
2021-11-04 12:02:03 +08:00
和楼上的解决方案差不多。

1. 在低版本, 比如 target = 30 编译一次
2. 找到 app/build/intermediates/packaged_manifests/debug/AndroidManifest.xml 。
3. 写个脚本分析出需要添加 android:exported="true" 的项目,写到一个文件里
4. 分析输出内容,如果是第三方的库,需要把这些项目写到 app 的 AndroidManifest 里覆盖一下
5. 升级 target = 31
fromzero
2021-11-04 16:07:08 +08:00
在 merge minafast task 后操作 xml 节点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/812581

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX