1 建立AndroidStudio调试系统代码工程
1.1 建立工程时,无需编译整个系统代码。
1)只需要抽取调试的那几个java代码文件作为工程代码,引用或关联的系统jar包作为libs引用。
2)添加bootClasspath引用
3)可以删除android.sdk引用(根据需要与否)
ndk.dir=D\:\\AndroidSDK\\sdk\\ndk-bundle
sdk.dir=D\:\\AndroidSDK\\sdk
2、将1.1中编译的jar或apk或so替换到手机(debug版本)中,进行在线调试
2.1 选择正确的进程attach debug,一定要注意区分调试代码所在的系统进程,否则进入不了该断点。
Breakpoint at:
android.os.Process#killProcess
android.os.Process#killProcessQuiet
一运行就crash?Debug方式启动,然后AS attach debug
$ am start -D -W -n com.xxx/.yyy
$ am set-debug-app -w --persistent com.xxx
有native crash,产生tombstone日志,设置属性让debuggerd保留现场,然后 gdbclient.py -p PID
# setprop debug.debuggerd.wait_for_gdb true (