博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android app AOP添加埋点技术总结
阅读量:7052 次
发布时间:2019-06-28

本文共 435 字,大约阅读时间需要 1 分钟。

目标:通过面向切面编程来实现对源代码无侵入的埋点。
 
  方式 能力 缺点 学习曲线  
XPosed 运行期hook
能hook自己应用进程的方法;
能hook别的应用的方法;
能hook系统方法;
1,手机需要root;
2, 依赖三方包的支持,碎片化严重兼容性差;
一般  
DexPosed 运行期hook 能hook自己应用进程的方法; 1,目前不支持4.4以及5.1以上的系统;
2, 依赖三方包的支持,碎片化严重兼容性差;
一般  
AspectJ 编译期字节码注入
可以在编译成字节码的过程中插入代码;
 
官方有Eclipse插件,但没有Android Studio插件,需要替换编译器,环境不好部署; 一般  
ASM 编译期或者运行期字节码注入 可以在字节码中文件或者ClassLoader加载字节码的时候插入代码; 需要熟悉字节码语法; 陡峭  
           
 
最终我选择了ASM...

转载于:https://www.cnblogs.com/mosthink/p/6245983.html

你可能感兴趣的文章
ubuntu快捷键
查看>>
IOS——生成智能调试输出
查看>>
杀毒软件Avast被曝严重的0day漏洞
查看>>
NDK Caused by: java.lang.UnsatisfiedLinkError:
查看>>
oracle timestamp相减
查看>>
【swing】 BoxLayout布局
查看>>
Android 属性动画(Property Animation)完全解析 (下)
查看>>
GC overhead limit exceeded
查看>>
JDBC学习之三
查看>>
CSS3 渐变(Gradients)
查看>>
Windows7关机、重启、待机、休眠命令
查看>>
如何在Xcode8上安装插件
查看>>
JQuery对CheckBox的一些相关操作
查看>>
IIS应用程序池的作用
查看>>
Project configuration is not up-to-date with pom.xml
查看>>
查询批次上课时间
查看>>
Ext.data.Store 中 data 的克隆原理
查看>>
Linux文件内容去重
查看>>
设计模式 之 状态模式
查看>>
Java泛型(一)ArrayList和HashMap
查看>>