准备开始学习安卓逆向,在Android-Killer的使用上遇到了问题。

我使用Android-Studio生成了一个apk,准备用Android-Killer进行反编译。

image-20210121175650912

拖进Android-Killer后,一直报mainactivity.smali文件已丢失,无法执行打开操作这个错误。刚开始以为是jdk版本的问题,换成了教程里的jdk1.7这个问题仍然存在。

image-20210121175800897

但是在反编译生成的文件中,可以看到mainactivity.smali文件是存在的。

image-20210121175923221

网上有人说这是Android-Studio 2.0以上的Instant Run功能,帮助开发者快速调试代码。因此AS生成的debug版本apk文件与release版本的apk目录项目不同。但是AS 4.0中已经找不到Instant Run这个选项了。

那索性就直接生成release版本的apk好了,build -> Geberate signed apk

image-20210121191935718

选择一个加密密钥,没有就生成一个

image-20210121191957191

生成release版本

image-20210121192041000

image-20210121192134849

用Android Killer打开,可以正常反编译以及重打包签名

image-20210121192236833

此解决方法的缺点是AS生成release版本apk的速度远不如debug版本快。

环境搭建参考

https://www.52pojie.cn/thread-844248-1-1.html