手机模拟器,青岛seo关键词排名,宠物店网站开发文档撰写,宁波网站运营优化系统#xff08;1#xff09;在IDA的安装路径中找到android_server文件。 #xff08;2#xff09;将android_server拷贝到手机的/data/local/tmp目录下面。 #xff08;3#xff09; 将手机插上电脑#xff0c;打开命令提示符#xff0c; 先输入”adb shell”,然后输入”…1在IDA的安装路径中找到android_server文件。 2将android_server拷贝到手机的/data/local/tmp目录下面。 3 将手机插上电脑打开命令提示符 先输入”adb shell”,然后输入”su root”获取root权限。 接着输入” chmod 777 /data/local/tmp/android_server” 给android_server加上相应的权限。 接着输入” /data/local/tmp/android_server”启动android_server。 4重新打开一个命令提示符 输入”adb forward tcp:23946 tcp:23946”进行tcp端口转发 5adb root模式下执行” am start -D -n com.example.testjniso/com.example.testjniso.MainActivity”命令启动所要调试的Activity。注意这里选择的Activity名的获取有个技巧可获得先打开DDMS或者Monitor下面的窗口日志。然后手动打开APP在前面会提示启动的Activity名如下图 输入调试运行的APP后 app会弹出”Waitting for debugger”对话框,如下图所示: 6启动ida pro点击”Debugger - Attach - Remote ArmLinux/Android debugger”会看到以下对话框: 点击”Debug options”按钮在”Suspend on process entry point”, ”Suspend on thread start/exit”, ”Suspend on library load/unload” 等选项的前面打上勾,如下图所示 点击”ok”后会在以下对话框的hostname中填上”localhost” 在弹出的”Choose process to attach to”窗口中找到”com.example.testjniso”进程选中该进程然后点击”ok”按钮。 (7)打开eclipse ddms在Devices窗口中可以看到以下内容: 其中可以看到com.example.testjniso进程的端口为8700。 8打开命令提示符输入以下命令jdb -connect com.sun.jdi.SocketAttach:port8700,hostnamelocalhost 如下图所示 (9)点击ida中的继续执行按钮下图中的绿色三角形按钮或者按F9。 在ida弹出的”Add map”窗口中一律点击”Cancle”按钮。 10点击app中的”点击加载so文件”按钮确保so文件已经加载到了手机内存中。点击ida中的”Debugger - Debugger windows - Module list ”。在”Modules”窗口中找到libTestJni.so 点击ida中的暂停调试按钮暂停当前的调试如下图所示 右击libTestJniSo.so文件在弹出的框中点击”Jump to module base”,跳转到libTestJniSo.so文件的起始地址。 按下AltT弹出查找对话框中输入” Java_com_example_testjniso_MainActivity_helloFromJni” 如下图所示 点击”ok”按钮后即可跳转到 Java_com_example_testjniso_MainActivity_helloFromJni 函数所在的起始地址。 然后在地址处下断点 再按F9重新开始调试点击app中的”点击加载so文件”按钮重新加载libTestJniSo.so即可看到程序成功地停在了断点处 到此处就可以正常地调试so文件了。 原文参照http://blog.csdn.net/pengyan0812/article/details/43990791