1.打开模拟器之后,用adb命令链接
adb connect 127.0.0.1:7555(mumu模拟器)
2.上传ida安装目录下的android_server文件到模拟器的 任意路径下(我这用的是android_x86_server)
3.设置权限,启动android_server程序
4.重新打开一个命令提示符,输入”adb forward tcp:23946 tcp:23946”进行tcp端口转发。
转发后没有任何输入,代表转发成功。
5.通过adb shell进入模拟器终端,使用am start命令启动apk程序。
am start -D -n com.******.****/com.*****.***Activity
启动后,模拟器界面会弹窗登录调试链接的信息。
6.启动ida pro,点击”Debugger - > Attach -> Remote Linux debugger”,(如果后面提示链接错误,可以使用 Remote ArmLinux/Androiddebugger 再连接试试)会看到以下对话框:
点击”Debug options”按钮,在”Suspend on process entry point”, ”Suspend on thread start/exit”, ”Suspend on library load/unload” 等选项的前面打上勾,如下图所示:
点击”ok”后会在以下对话框的hostname中填上”localhost” ,点击“ok”.
7.在弹出的”Choose process to attach to”窗口中找到 你通过am命令启动的进程,选中该进程,然后点击”ok”按钮。
8.连接成功后就进入了ida的调试界面(如果失败,请参考https://blog.csdn.net/caiqiiqi/article/details/74121323?utm_source=blogxgwz1)
9.动态断点调试还在学习中。下一节再分享!!!
参考:
https://www.jianshu.com/p/28bc480bf563 ADB指令大全
https://bbs.pediy.com/thread-224420.htm
https://blog.csdn.net/caiqiiqi/article/details/74121323?utm_source=blogxgwz1
-------------------- 如果对你有帮助,请帮忙支持一下!--------------------