smalidea的使用
smalidea是一个IntelliJ IDEA/Android Studio smali语言插件,可实现动态调试smali代码。
下载插件
github地址:https://github.com/JesusFreke/smalidea -> DOWNLOAD
安装插件
File->Settings->Plugins->install plugin from disk->选择下载的zip包
准备
1.测试应用的release包,反编译,并修改清单文件中的
2.回编译成apk包(反编译和回编译可以利用AndroidKiller,资源里面有,需要的可以下载)资源下载
3.AS打开反编译的项目
4.选择smali目录,右击 mark Directory as Source Root
5.配置SDK:Project Structure -> Project SDK -> 1.8
6.配置Run -> Edit Configurations -> + -> Remote -> 填写Name,Port 8700 Search sources using modules classpath:Project
7.通过进程信息获取包名的pid -> adb shell ps -> 按照包名获取pid
8.转换端口 adb forward tcp:8700 jdwp:
9.点击AS上的debug功能
10.愉快的调试吧!
方法二 调试模式启动
1.开启应用的调试模式
adb shell am start -D -n <包名>/.类名 -> 手机页面会出现等待调试的页面
例如: adb shell am start -D -n com.barray.helloandroid/.MainActivity
2.通过进程信息获取包名的pid -> adb shell ps -> 按照包名获取pid
注:根据包名(pkg_name)查看该进程的信息(在Linux中用grep,下面的例子是在windows下,所以用的是findstr)
例如:adb shell ps | grep “com.barray.helloandroid”
3.转换端口 adb forward tcp:8700 jdwp:
4.点击AS上的debug功能
5.愉快的调试吧!