一、設定全域性除錯狀態
su getprop ro.debuggable // 檢視是否開起了全域性除錯 su magisk resetprop ro.debuggable 1 // 設定全域性除錯狀態(臨時設定) stop;start
當然,如果app本身有 debeggable屬性的話,可以不用設定
二、啟動server,設定埠轉發
cd /data/local/tmp ./android_server64 adb forward tcp:23946 tcp:23946 // 再開一個終端,做埠轉發
之後下斷點
三、除錯模式啟動目標
adb shell
su
am start -D -n <包名>/.入口 # am命令啟動app(如:am start -D -n com.example.re3/.MainActivity
四、埠轉發,並讓程式繼續執行
adb forward tcp:8700 jdwp:<pid> jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700
此時我們 ida 直接 F9即可。我們也可以在 IDA->Debugger->Debugger Options 上進行設定,設定在載入 任何一個.so檔案的時候斷下來