Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
R
ratel-doc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ratel
ratel-doc
Commits
caa67657
Commit
caa67657
authored
Jan 20, 2020
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
RDP 功能
parent
9948b076
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
0 deletions
+21
-0
9.RDP.md
9.RDP.md
+20
-0
README.md
README.md
+1
-0
No files found.
9.RDP.md
0 → 100644
View file @
caa67657
# RDP
RDP(Ratel Decompile Project)是类似APKTool的一套android apk代码修改工具,构建在ratel framework之上,通过重打包的方法修改apk代码文件,但是RDP和apktool有很大不同。RDP主要关注在java代码的修改和注入,对资源文件、AndroidManifest的修改并不支持。和APKtool对比如下
1.
弱化功能,RDP的功能类似APKTool
``-r,--no-res Do not decode resources.``
参数,所以apk修改范围是APKTool功能子集,另一方面这也是强化功能。RDP相比APKtool来说,不存在
``资源混淆对抗``
,理论上不会重打包失败。就目前而言,绝大部分头部app由于APKtool资源混淆对抗问题无法构建成功
2.
RDP不需要考虑签名问题,一般来说APKtool修改之后,需要手动bypass signature check,RDP工作之前已经被ratel改包,之后已经完成apk常规检查的破解
3.
ratel插件机制,还是因为RDP工作在ratel framework之上,所以依然享受ratel本身提供的所有功能。包括一机多号、设备指纹、hook插件
所以,如果你只是想修改apk的java代码逻辑,那么RDP相比APKtool更加适合你,但是如果你还想修改资源文件,或者添加新的activity之类的,那么只能使用apktool。
## 使用
在ratel构建过程中,使用
``-D --decompile``
即可产生RDP项目,此时参数
``-o --output``
指向输出的RDP的输出文件夹,无
``-o``
会自动计算。如果使用RatelWebAPI操作,那么在
``extend parameter``
中加入上述参数即可
产生的文件夹包括,所有非代码文件解压文件、所有dex反编译为smali文件、apk重编译脚本文件。使用AndroidStudio或者idea打开这个文件夹,并标记所有smali文件夹为
``source directory``
,即可通过IDE进行代码修改,甚至可通过
``smali idea``
插件进行源码调试
代码修改完成后,执行apk重编译脚本文件夹下的脚本,即可产生新的apk,该apk可以直接安装
## 其他
1.
如果想类似apktool一样开启debug,ratel本身就指出开启debug,在ratel构建过程加入
``-d --debug``
参数即可。
README.md
View file @
caa67657
...
...
@@ -33,6 +33,7 @@ ratel 大概分为以下模块
## [虚拟化相关](5.virtual_env.md)
## [扩展开发包](7.ratelExtension.md)
## [ratel调度任务](8ratelScheduler.md)
## [RDP](9.RDP.md)
## [常见问题处理](6.faq.md)
# 基本使用流程
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment