NDK聯機除錯

2021-07-02 17:57:14 字數 1847 閱讀 1911

做ndk開發的時候,除錯是比較頭疼的事情;但是沒有除錯,有些具體的錯誤就無法了解。這裡我流水似的介紹一下在真機下的ndk除錯方案,以下是我的筆記:

ndk進行除錯的時候,遇到了幾個問題:

1) 需要對android手機有root許可權來設定執行一些命令

2)配置ndk-build

3)配置adbserver

4)配置adb client

除錯的整體流程:

在進行除錯之前,ndk-adb指令碼要從手機上獲取一些檔案來做除錯前準備(bug a);之後,將建立乙個遠端除錯構架來除錯應用程式。其中伺服器端(adbserver)負責與手機通訊,本地客戶端(client)將通過伺服器端除錯手機程式。 

**********===

bug a)許可權問題

**********===

解決方案:修改許可權。

-------

sss$ adb shell

$ su

# chmod 771 /data/data

# chown system.system /data/data

參考文章:

**********===

bug b)沒有除錯資訊的問題

**********===

需要在編譯階段,在ndk-build命令上加引數「ndk_debug=1」

具體為:開啟工程的properties,修改如下圖(去掉use default build command,在build command中加入相關引數):

參考文章:

bug c)配置遠端除錯--server端

**********===

就是使用系統的指令碼進行,命令為:

建立eclipse工具,如下圖所示:

bug d)配置遠端除錯--client端

**********===

具體請參考文章結尾的參考資料。

圖例如下:

關於對手機的root

**********====

最後關於手機刷機的技術,htc g7需要用到的軟體為: unrevoked v3.2.0.92_0.93(需要跟手機的nboot匹配)。

具體請參考

具體請參考 note:htc刷機

關於eclipse中配置jni開發環境,請參考note: ndk在eclipse中的整合開發

》參考資料

配置ndk環境:

書籍:《android ndk beginner's guide》的最後一章: chapter11 debugging and troubleshooting

xcode iphone 聯機除錯

為了省下 99,在測試階段,可以使用下面方法在真機上除錯。1.為什麼我聯機開發如此簡單呢 這個方法我測試通過.來自 2.iphone 實機開發 part 1 helloworld 連真機的時候xcode會提示的,你需要根據提示,將iphone和xcode關聯起來。這個視窗在xcode window ...

安卓開發adb聯機除錯方法

總體來說,安卓開發套件中adb是個非常優秀的除錯工具,我們可以用它進行安卓程式的除錯工作。提到adb,我們不得不聯想到adbd,根據linux的命名習慣,通常以字母d結尾的都是服務程式,比如常見的httpd,msqld,telnetd等,adbd就是乙個除錯伺服器,它接受adb傳來的除錯指令,並將結...

NDK生成的so動態庫怎麼除錯

很多時候android業務層開發,和sdk開發是分開的,sdk更多與ndk生成so,這期間雙方 不共享,對除錯帶來很大難度,所以把一些方法彙總下 需要用到工具 android sdk platform tools adb ndkso生成庫中間檔案 obj local armeabi v7a 到這層即...