各位大佬们,因为需求可能项目目标版本要升级到 Android12 ,但在适配过程中发现 Android12 需要显式的声明 android:exported 这个属性,但由于项目中依赖的库较多,分离的组件化工程中也依赖了一堆库,要求每一个都升级似乎不太现实,我又不想手动检查几百个组件是否显示添加,找到了一个 gradle 脚本似乎也不起作用: https://github.com/phamtdat/AndroidSnippets 菜逼面向搜索引擎已经到极限了(悲 ,大佬们有什么建议吗?
1
lee1997 2021-11-03 18:54:25 +08:00
脚本遍历文件夹下面所有的 AndroidManifest.xml ,解析组件标签,插入 android:exported
|
2
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 |
3
fromzero 2021-11-04 16:07:08 +08:00
在 merge minafast task 后操作 xml 节点
|