前段时间逛 github 发现了一个堪称神一样的开源项目,一直没时间分享给大家,今天小编(工匠若水)给大家推荐一把。先给大家上地址 https://github.com/Efaker/FakerAndroid
执行java -jar FakerAndroid.jar fk
命令就能生成一个 AndroidStudio 工程(可以改代码重新编译的那种)。你可能说我有 jadx-gui,我想说,FakerAndroid 更加香。
FakerAndroid 有多牛逼呢?
官方文档介绍的特性就有如下:
- 可以优雅地在一个 Apk 上写代码;
- 能直接将 Apk 文件转换为可以进行二次开发的 Android 项目,支持 so hook(提供 so 函数 Hook Api),对于 il2cpp 的游戏 apk 直接生成 il2cpp c++ 脚手架;
- 将痛苦的逆向环境,转化为舒服的开发环境,告别汇编,告别二进制;
- 提供 java 层代码覆盖及继承替换的脚手架,实现 java 与 smali 混编;
- java 层标准的对原有 java api 的 AndroidStudio 编码提示;
- Smali 文件修改后运行或打包时自动回编译(AndroidStudio Project 文件树模式下可以直接找到 smali 文件,支持对 smali 修改,最小文件数增量编译);
- 对于 il2cpp 的游戏 apk,标准的 Jni 对原有 il2cpp 脚本的编码提示;
- 无限的可能性和扩展性,能干啥你说了算;
- Dex 折叠,对敏感已经存在或后续接入的代码进行隐藏规避静态分析;
对于加壳的 apk 请自行脱壳后使用,理论上 Apktool 正常 decode、encode 的 Apk 都可以一马平川的直接运行。
体验怎么样?
这个就不用多说了,都告诉大家哪里有米了,怎么煮大家都懂得。不过官方还是给了一个图文并茂的案例教程,参见https://blog.csdn.net/easy6798/article/details/109404325。
这玩意从 apk 导出的项目源码修改后可以直接编译,不用任何其他工具和步骤介入,和直接拿着源码构建体验一致。总之就是真香啊!!!
到此结题,扫描右侧微信加个好友呗,朋友圈更精彩。小编 朋友圈技术更精彩>
![e43b177e0f54914764c33039e31ea2b9.gif](https://img-blog.csdnimg.cn/img_convert/e43b177e0f54914764c33039e31ea2b9.gif)
点击左下角阅读原文查看历史经典技术问题汇总,看完顺手一键三连呀~