AndroidStudio动态调试smali(实测可用)
0x01 工具
①Android Studio最新版。
②apktool尽量使用最新版的。
③ideasmali插件。下载地址https://github.com/JesusFreke/smali/wiki/smalidea
0x02 具体步骤
安装ideasmali插件,选择File->Settings->Plugins,安装之前下载的ideasmali插件。
安装的是压缩包;
注意:模拟器无需在 AndroidManifest.xml中添加android:debuggable=“true”,只需用adb命令启动调试就行了见下文
导入反编译后的smali文件:
可以导入整个工程文件,也可以仅导入smali文件夹;
Android studio设置远程调试选项
8700被占用,更改端口;
Android studio Jdk设置
将class.dex用apk助手反编译的smali文件目录作为资源目录
用AndroidKiller查看要调试的app的包名与入口activity的名字
adb命令启动调试
首先运行模拟器,模拟器内启动调试程序
然后cmd窗口依次输入下面的命令
adb devices#查看模拟器
adb -s emulator-5554(模拟器名) shell#打开模拟器的shell
am start -D -n (包名/入口名) 开启调试
shell 模式下输入 linux命令 ps 查看模拟器内运行的程序找到我们要调试的程序的pid,这里是3010
附加进程退出shell 模式,cmd模式下输入命令 adb forward tcp:8700 jdwp:3010
开始调试
断点生效后如下图:之前的命令如下: