每日总结-第三天

2020-04-03  本文已影响0人  SamiraG

ida调试Genymotion的Android模拟器

Arm环境

Genymotion虽然是Android模拟器但实际使用的是x86的指令集,如果apk文件中使用了ndk编程,则需要在模拟器中安装arm指令转x86指令的转换器,https://github.com/m9rco/Genymotion_ARM_Translation 这里包含了各种版本SDK的转换器,直接在package中取相应的版本拖到模拟器中安装后重启即可。

调试环境配置

第二天总结中提到的配置适用于使用root了的手机,但是对于Android模拟器稍微有点区别。
如果是x86的模拟器

  1. 使用dbgsrv文件夹中的android_x86_server文件,而不是android_server文件
  2. 在ida中选择 Remote Linux debugger而不是Remote ARMLinux/Android debugger

但是我用Genymotion按照这个步骤来还是会出错,换上了夜神的模拟器.

  1. 首先需要打开模拟器的设置,点系统版本号5次打开开发者模式
  2. 找到nox_adb.exe文件,输入nox_adb.exe connect 127.0.0.1:62001然后执行adb connect 127.0.0.1:62001就可以执行adb了。如果失败的话就nox_adb.exe kill-server再执行connect如果还是不行就换成5037端口.

夜神模拟器可以用android_x86_server也可以用android_server,但是附加成功以后,不下断点的时候可以正常执行,下了断点以后会出现SIGILL和SIGTRAP等错误,我感觉好像就是模拟器的原因...

总结

今天一天就是在不断的装模拟器,我用了Genymotion,夜神, 网易momo这些模拟器都调试不通,就是一下断点就SIGTRAP or SOGILL...绝望...还是需要去买一个手机

IDA调试 android so文件的10个技巧

上一篇下一篇

猜你喜欢

热点阅读