如何简单 hack agp 执行过程中的某个类

霍老师的开源项目

github.com/bennyhuo/Ha...

这个很好的解决了,viewbinding 默认是生成 ,只有手动设置属性才不生成的问题

假设你是一个老项目,有几百个 xml 文件,你接入了 viewbinding, 这几百个 xml 全都给你生成了 也不管你需要不需要,这是多么恶心的一件事。 霍老师 这个项目完美解决了这个问题。

只是项目过老了, 目前主流 app 都是 agp8+了,这里面代码可能要修改下。 这里提供下修改方法,掌握了以后

利用好类的双亲委托加载机制 就可以做很多 agp 的 hack 了

找到你要 hack 的类

记住这个类的包名,你要放到 buildSrc 下 ,包名不要错了,保持一致。

这个时候 你需要 带着这个类所属的 aar 去 google 一下,因为你拷贝出来的类 需要一些依赖,你要知道这些依赖在哪里 ,否则还是 build 失败。

比如说我们这里就是要找到这个地址

mvnrepository.com/artifact/an...

然后找到 pom 文件

打开

选择你需要的依赖 复制到 buildSrc 下的 gradle 文件中即可。

这里 as 做的挺智能的,你复制的是 maven 的 xml,拷贝过来直接自动帮你转了,很方便。

相关推荐
杉氧1 小时前
深入理解 Compose 重组机制:快照系统如何驱动 UI 精准刷新?
android·架构·android jetpack
召钱熏2 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
杉氧2 小时前
深度解析:Jetpack Compose 核心架构与底层原理 —— 十年安卓老兵的“破茧重生”
android·架构·android jetpack
通玄3 小时前
Jetpack Compose 入门系列(七):ViewModel 与界面状态管理
android
落魄Android在线炒饭3 小时前
Android Framework 开发技巧:android.jar 生成与系统快速编译验证
android
如此风景3 小时前
Kotlin Flow操作符学习
android·kotlin
plainGeekDev4 小时前
GreenDAO → Room
android·java·kotlin
weiggle5 小时前
第八篇:ViewModel + Compose——生产级状态管理实践
android
恋猫de小郭10 小时前
Amper 正式转正 Kotlin Toolchain ,Gradle 未来何去何从
android·前端·flutter
plainGeekDev11 小时前
ButterKnife → ViewBinding
android·java·kotlin