内容简介:动态调试Smali有多种方式,可以用IDA Pro,Eclipse或者Android Studio等,IDA Pro折腾了下没弄好,于是就折腾Android Studio,因为主要用android studio开发,用起来比较顺手,下面记录下Android Studio的动态调试Smali的主要过程。反编译得到Smali源码,反编译过程较简单,之前讲过,不在这里讲解。反编译后需要在Application上添加 android:debuggable=”true” 选项,然后重新回编,签名APK,安装到手机上
动态调试Smali有多种方式,可以用IDA Pro,Eclipse或者Android Studio等,IDA Pro折腾了下没弄好,于是就折腾Android Studio,因为主要用android studio开发,用起来比较顺手,下面记录下Android Studio的动态调试Smali的主要过程。
1.APK 反汇编及回编
反编译得到Smali源码,反编译过程较简单,之前讲过,不在这里讲解。反编译后需要在Application上添加 android:debuggable=”true” 选项,然后重新回编,签名APK,安装到手机上
2.安装smalidea Android Studio 插件
安装ideasmali插件,File->Settings->Plugins->Install plugin from disk…,安装之前下载的ideasmali插件。
下载地址: https://bitbucket.org/JesusFreke/smali/downloads/
3.命令启动要调试的APK
adb shell am start -D -n com.example/.start.StartupActivity
4.启动DDMS
DDMS可以在开发 工具 里找到,找不到去到你的Android SDK安装目录tools/ddms.bat,双击ddms.bat启动DDMS,记下红色选择的端口7697,8700
5.进行端口转发
打开命令行,执行
adb forward tcp:8700 jdwp:7697
记得要关闭DDMS再执行该命令,否则会提示端口被占用
6.Android Studio导入Smali源码
File->New->Import Project…,一直下一步
Run->Edit Configurations..,
点击+,输入一个名称如:DebugSmali,Port填入刚刚的8700
7.配置JDK
File->Project Structure…,按如下图配置,红框内内容根据你实际情况选择:
8.启动调试
点击工具栏的调试按钮即可启动调试
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- debugserver 动态调试
- Linux内核常用的动态调试手段
- osquery动态调试和重打包
- Android Studio动态调试smali
- Java 动态调试技术原理及实践
- 反编译之利用AndroidStudio动态调试smali源码
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。