eclipse 單步調試JNI

1. 環境配置
a) 下載eclipse, SDK, NDK
b) 安裝cdt
c) 安裝adt
d) window --> Preferences --> Android 配置SDK路徑
d) window --> Preferences --> Android --> NDK 配置NDK路徑

2. 建立工程
a) 新建Android工程
b) 工程上右鍵 ---> Android Tools ---> Add Native Support...

c) 添加native 函數,javah 生成頭文件, 寫Native Cpp代碼...


3) 調試
a) 工程上右鍵 --->Properties ---> C/C++ Build ---> Build Settings  ---> Build command: "ndk-build NDK_DEBUG=1 -j4"
b) 工程上右鍵 ---> Debug As ---> "Android Native Application"  進行調試

這個時候會出現

Unknown Application ABI: 
Android
Unknown Application ABI: 
NDK:
Unknown Application ABI: 
WARNING:
Unknown Application ABI: 	


c) 在jni目錄下增加 Application.mk, 內容爲    "APP_PLATFORM := android-16"
d) 就可以進行調試了。
 
 
注意事項:
a)   System.loadLibrary("xxxx") 位於onCreate 的setContentView(...) 之後,
b)   onCreate裏調用的JNI函數不能在native 裏面拿到斷點。 
      onResume在第一次啓動的時候,也不能進入native 斷點, 第二次才能進入。
      觀察了一下,應該是整個應用啓動完成後,才連上gdb的,才能進行斷點調試。因此,在啓動完成以後才能進行斷點。
    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章