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
插入第三方集成模块
第一步:将集成的代码文件复制到项目中

第二步:设置项目的settings文件中的导入路径
include ':ratel-extension'

第三步:在build文件中,导入项目路径
implementation project(path:":ratel-extension")

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课
而且不是大规模部署,日志这块也不着急
ratel hook app的更多相关文章
- Android C/C++层hook和java层hook原理以及比较
作者:Denny Qiao(乔喜铭),云智慧/架构师. 云智慧集团成立于2009年,是全栈智能业务运维解决方案服务商.经过多年自主研发,公司形成了从IT运维.电力运维到IoT运维的产业布局,覆盖ITO ...
- webpy使用笔记(二) session/sessionid的使用
webpy使用笔记(二) session的使用 webpy使用系列之session的使用,虽然工作中使用的是django,但是自己并不喜欢那种大而全的东西~什么都给你准备好了,自己好像一个机器人一样赶 ...
- [Python]peewee使用经验
peewee 使用经验 本文使用案例是基于 python2.7 实现 以下内容均为个人使用 peewee 的经验和遇到的坑,不会涉及过多的基本操作.所以,没有使用过 peewee,可以先阅读文档 正确 ...
- 在iOS应用程序中使用Frida绕过越狱检测
阿里聚安全在之前的三篇博客中介绍了利用Frida攻击Android应用程序,整个过程仿佛让开发者开启上帝视角,在本篇博客中,我们将会介绍在iOS应用程序中使用Frida绕过越狱检测.即使 ...
- Android热修复框架汇总整理(Hotfix)
Android平台出现了一些优秀的热更新方案,主要可以分为两类:一类是基于multidex的热更新框架,包括Nuwa.Tinker等:另一类就是native hook方案,如阿里开源的Andfix ...
- Android热修复技术原理详解(最新最全版本)
本文框架 什么是热修复? 热修复框架分类 技术原理及特点 Tinker框架解析 各框架对比图 总结 通过阅读本文,你会对热修复技术有更深的认知,本文会列出各类框架的优缺点以及技术原理,文章末尾简单 ...
- [Python]peewee 使用经验
peewee 使用经验 本文使用案例是基于 python2.7 实现 以下内容均为个人使用 peewee 的经验和遇到的坑,不会涉及过多的基本操作.所以,没有使用过 peewee,可以先阅读文档 正确 ...
- web.py框架之高级应用
二.高级应用 2.1 web.ctx 获取客户端信息,比如:来源页面.客户端浏览器类型等. web.ctx基于 threadeddict类,又被叫做 ThreadDict.这个类创建了一个类似字典(d ...
- python高级—— 从趟过的坑中聊聊爬虫、反爬以及、反反爬,附送一套高级爬虫试题
前言: 时隔数月,我终于又更新博客了,然而,在这期间的粉丝数也就跟着我停更博客而涨停了,唉 是的,我改了博客名,不知道为什么要改,就感觉现在这个名字看起来要洋气一点. 那么最近到底咋不更新博客了呢?说 ...
- Android 程序分析环境搭建-动态分析环境搭建
静态查看过app 的代码,但是有些app 非常复杂,页面好多,你根本找不到从何处下手.还有app 通过静态分析,发现有被加固(后续会讲如何砸壳),根本找不到,还有即便你搜索app界面上的文字,你也搜索 ...
随机推荐
- Sql Sugar 使用
sql sugar orm文档地址: SqlSugar ORM 5.X 官网 .文档.教程 - SqlSugar 5x - .NET果糖网 (donet5.com) sql sugar 基本用法大全, ...
- go-fastdfs断点续传功能
1)安装go-fastdfs: 可以从GitHub上获取go-fastdfs的源码,然后使用go get命令安装: go get github.com/sjqzhang/go-fastdfs 2)安装 ...
- PostgreSQL权限管理
一旦一个对象被创建,它会被分配一个所有者.所有者通常是执行创建语句的角色.对于大部分类型的对象,初始状态下只有所有者(或者超级用户)能够对该对象做任何事情.为了允许其他角色使用它,必须分配权限. 1 ...
- db2 linux创建用户后,登录报错
db2的数据库服务器, 创建用户及授权参考 https://blog.csdn.net/qq_24805831/article/details/102590084 按照步骤创建用户后,连接数据库报错: ...
- Ubuntu20.04 LTS更新源
Ubuntu 20.04 LTS Focal Fossa于2020年04月23日发布. 备份sudo cp /etc/apt/sources.list /etc/apt/sources.list.ba ...
- What does int main(int argc, char *argv[]) mean?
忽然发现自己不理解许多代码中这行的含义是什么...(汗颜) 下面贴一段stackoverflow上面的回答: argv and argc are how command line arguments ...
- js防止表单重复方法
用flag标识,下面的代码设置checkSubmitFlg标志: <script language=""javascript""> var chec ...
- spring@Validated校验用法
1.controller添加注解 public BaseResponse addOrUpdateUnit(@RequestBody @Validated RiskUnitDto riskUnitDto ...
- (0501)phase机制
(1)启动seq: (2) 0312:
- python 提取文件的名字 和路径
# coding=utf-8 import sys import os s = 'C:/Users/Desktop/lesson/python/calss1.py' m_dir = os.path.d ...