Luban是一个移动端监视APP运行的工具应用,提供了侵入式的监视方案。整个项目结构是对《由客户端内部通讯引发的插件化开发的随想和实践》的一个实践。
整个项目利用Dagger2实现了插件式的开发,能够轻易的扩展出自定义的功能。整个工程包括了一个主程序和SDK包,SDK包可以集成到需要监视的APP内部,主程序会自动进行呈现和统计。
将工程luban.sdk
和luban.aidl
导入到需要集成的APP内,添加如下引用:
compile project(':luban.sdk')
在需要的地方注册出参(推荐在Application的onCreate方法中)
LB.connect(getApplicationContext(), new AbsLBParaLoader() {
@Override
public void loadInParas(InParaManager im) {
}
@Override
public void loadOutParas(OutParaManager om) {
om.register("Test");
}
});
当注册完成之后,可以开始传递出参的值:
LB.setOutPara("Test", String.valueOf(System.currentTimeMillis()));
此时在主程序中就能看到这个值:
- 入参设置
- 全局异常捕获(Runtime和NDK)
- 日志记录
- TODO