-
LazierTracker-Android代码
资源介绍
简介
本项目通过Android字节码插桩插件实现Android端无埋点(或自动埋点),并且支持根据配置文件实现业务数据的自动采集。
无埋点插件
为便于大家深入理解Android字节码插桩插件,特别梳理了一篇文章应用于Android无埋点的Gradle插件解析,供大家参考。
原理
试想一下我们代码埋点的过程:首先定位到事件响应函数,例如Button的onClick函数,然后在该事件响应函数中调用SDK数据搜集接口。
我们的gradle插件采用 Android gradle 插件提供的最新的Transform API,在Apk编译环节中、class打包成dex之前,插入了中间环节,调用 ASM API对class文件的字节码进行扫描,当扫描到目标事件响应函数时,在函数头部或尾部插入SDK数据搜集代码。
开发环境
语言:Groovy
字节码操作库:ASM5.0
工具:Android Studio 2.3.3(Mac)
Gradle:1.5
注意事项
在AS 3.0中,需要在project的 gradle.properties中添加
android.enableD8=true
使用
使用
- 上一篇: Android代码-安卓开发学习资料和对应Demo
- 下一篇: Delphi实现源代码