安卓逆向调试smali笔记

我的系统环境配置:

win7 64

android studio 3.2

jdk 1.8.0_144

注意:由于android studio3.0以上版本中的ADDM被取消,目前只能在NDK的tools工具中打开monitor.bat

1、打开前关闭android studio否则会报8700端口被占用的错误,如果关闭后仍然有8700被占用,

   打开cmd 输入netstat -ano 找到占用8700的pid kill掉该程序即可

2、把需要调试的apk反编译,之后把smali文件copy出来改名字

3、cmd命令行切换到android sdkplatform-tools目录,即adb所在的目录,执行命令(以调试模式开启)

   adb shell am start -D -n 应用包名/Activity具体类名  

  adb shell am start -D -n com.example.myapplication/com.example.myapplication.MainActivity

  执行后,手机会出现debug弹窗,在Monitor窗口上也会多出一行,即红色debug logo那一行,记录以下两个端口号 Online和debug的端口号

  3482和8600 注意;如果不用ADDM那么可以执行:adb shell执行 ps | grep kugou命令查看转发端口

  然后进行端口转发:

    关闭Monitor窗口,因为会占用8700端口。cmd命令行切换到adb所在的目录

  执行命令: adb forward tcp:8700 jdwp:(online的端口号)

        格式: adb forward tcp:tcp端口 jdwp:设备Online端口

         jdwp:Java Debug Wire Protocol,Java 调试线协议。

  执行完成之后应该窗口没有变化直接跳到下个命令行
 
4、将 刚才存储的src目录导入Android Studio 
  剩下的可参看

  https://blog.csdn.net/ausboyue/article/details/80189184

  
 

猜你喜欢

转载自www.cnblogs.com/Robertzewen/p/10096676.html