ratel hook app

创建平头哥项目

创建一个基本的Android项目

https://www.cnblogs.com/xsir161/p/16905868.html

手动创建一个平头哥项目(windows推荐)

https://www.cnblogs.com/xsir161/p/16907380.html

通过模板的方式创建平头哥项目(windows不推荐)

https://www.cnblogs.com/xsir161/p/16889658.html

插入第三方集成模块

第一步:将集成的代码文件复制到项目中
img
第二步:设置项目的settings文件中的导入路径
include ':ratel-extension'
img
第三步:在build文件中,导入项目路径
implementation project(path:":ratel-extension")
img

RPC调用

RPC调用静态函数

其特征为函数没有先new,直接是调用了方法

byte[] res = (byte[]) RposedHelpers.callStaticMethod(RposedHelpers.findClass("com.yuanrenxue.challenge.two.NativeLib", RatelToolKit.hostClassLoader),"encrypt",sign.getBytes(),ts);
(byte[]) 为返回的数据类型  
com.yuanrenxue.challenge.two.NativeLib 类名
encrypt 调用的类方法
sign.getBytes(),ts 这些是参数

RPC调用实例方法

在调用此方法前,需要new一下

Class<?> aClass = RposedHelpers.findClass("com.yuanrenxue.challenge.three.ChallengeThreeNativeLib", RatelToolKit.hostClassLoader); //找到类
Object o = RposedHelpers.newInstance(aClass); //实例化类
byte[] sign = (byte[])RposedHelpers.callMethod(o, "sign", page); //调用方法

com.yuanrenxue.challenge.three.ChallengeThreeNativeLib 类名
sign 类方法
page 要调用的参数

FileLogger日志模块使用

注:学习本模块,要先学superappium,所以要先学第12课再去学第16课
而且不是大规模部署,日志这块也不着急

posted @ 2022-11-26 19:45  xsir161  阅读(64)  评论(0编辑  收藏  举报