mosthink

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

分类:

技术点:

相关文章:

  • 2021-11-27
  • 2021-11-27
  • 2021-11-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-27
猜你喜欢
  • 2021-11-27
  • 2021-11-27
  • 2021-09-07
  • 2021-11-27
  • 2022-12-23
  • 2021-10-15
  • 2022-12-23
相关资源
相似解决方案