1.在CMD窗口下执行【adb devices】检查模拟器是否正常连接
2.将IDA安装目录下dbgsrv文件夹下的android_server发送到安卓模拟器中,注意android_server文件所在路径不能有中文和空格,否则adb push命令会出错,我这里将android_server文件放在c盘根目录下,使用以下命令将android_server发送到模拟器中。 【adb push C:\android_server /data/local/tmp】
3.执行【adb shell】命令
4.执行【su】 获取root权限
5.执行【cd /data/local/tmp】 将路径切换到/data/local/tmp下
6.执行【ls -l】 查询目录下所有文件以及读写权限
7.执行【chmod 777 android_server】 将android_server文件权限修改为777权限
8.再次执行【ls -l】查看文件权限是否修改成功
9.执行【./android_server】启动android_server
10.原来的窗口别关,重新打开一个新的CMD窗口,执行【adb forward tcp:23946 tcp:23946】进行端口转发
11.在模拟器上打开要调试的APK
12.打开IDA,选择Debugger->Attach->Remote ARM Linux/Android debugger
13.输入127.0.0.1
14.选择要调试的进程点击OK,如果这一步看不到进程名,证明没有获得root权限。需要检查安装的系统镜像是否已经Root,并且在abd shell里是否正确执行了su命令!
15.此时IDA已经附加到进程并且成功断下。按快捷键F9可让程序跑起来。