天天看點

使用R7版NDK搭建Android開發環境[不使用Cgywin]

廢話不多說,隻說幾句。

寫這個的初衷是因為公司的項目需要,上司要求我搭建一個android的開發環境(eclipse + ndk),我算上找資料,下載下傳,安裝,配置環境及寫文檔,正好用了一個工作日。先把整理好的文檔編輯後發在這裡,一是因為我覺得這樣會幫到一些人,二麼,好久沒寫部落格,手癢癢了!

好了,現在開始!

—————————————————分割線———————————————

1. 安裝jdk.

2. 安裝eclipse(eclipse-cpp-indigo-sr1-incubation-win32.zip,解壓即可使用。注:該版本內建cdt)

3.1 安裝android sdk(installer_r16-windows)

3.2 安裝eclipse的adt插件.

3.2.1 啟動eclipse, 選擇菜單項的help->install new software

3.2.2 點選add, 輸入名稱,然後在url中輸入:

3.2.3 選擇需要更新的工具,finish, 安裝完成後重新開機eclipse。

3.3 配置adt插件

3.3.1 啟動eclipse,選擇菜單項的window -> preferences

3.3.2 選擇android,在sdk location中選擇sdk的安裝目錄,ok!

完成後重新啟動eclipse。

3.4 添加平台和其他元件

3.4.1 啟動eclipse,選擇菜單項的window -> android sdk manager

3.4.2 根據實際需要選擇相應元件,然後點選install。

預設可安裝以下元件,如圖一所示:

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖一)

3.4.3 建立一個android 虛拟裝置。選擇菜單項的window ->avd manager.

new ,建立一個虛拟裝置,具體參數請自行設定。如圖二所示:

4. 安裝ndk(r7, android-ndk-r7b-windows.zip, 解壓即可使用)

注:r7之前的版本,必須要安裝cygwin才能使用ndk。從r7開始,windows版本的ndk提供了一個ndk-build.cmd腳本,可以直接利用這個腳本編譯。想要做到這一點,隻要為eclipse android工程添加一個builder,就能實作eclipse的自動編譯ndk。

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖二)

5. ndk執行個體的實作

5.1 啟動eclipse,建立android工程(此處名為testndk),如圖三所示:

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖三)

5.2 在testndk工程的根目錄下建立檔案夾jni,之後找到ndk的安裝目錄(\samples\hello-jni\jni)下的 android.mk和hello-jni.c 這兩個檔案,将其拷貝到testndk->jni檔案夾下面。

5.3 找到ndk的安裝目錄(\samples\hello-jni\src\com\example\hellojni)下的hellojni.java檔案,将其拷貝到testndk工程src檔案夾對應的包下。

5.4 修改項目檔案androidmanifest.xml,将activity标簽下的 android:name =“.testndkactivity”修改為 android:name =“.hellojni”。(注:此處的

testndkactivity為項目自動生成的,項目不同,此處也會不同)

5.5 建立并配置一個builder

5.5.1 點選project->properties->builders->new,建立立一個builder。在彈出的對話框上面點選program,ok!如圖四所示:

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖四)

5.5.2 在彈出的對話框【edit configuration】中,配置頁籤【main】:

location中需要填入nkd-build.cmd的路徑(ndk安裝目錄下)。

working diretcoty中需要填入testndk的工程根目錄。

如圖五所示:

5.5.3 在彈出的對話框【edit configuration】中,配置頁籤【refresh】:

勾選“refresh resources upon completion”,

勾選“the entire workspace”,

勾選“recuresively include sub-folders”。

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖五)

5.5.4 在彈出的對話框【edit configuration】中,配置頁籤【build options】:

勾選“after a “clean””,

勾選“during manual builds”,

勾選“during auto builds”,

勾選“specify working set of relevant resources”。

點選“specify resources…”勾選testndk工程的“jni“目錄 ,finish!

儲存設定,ok!

5.5.5 右鍵點選工程testndk,build project。當在console裡面看到如圖六所示的資訊,則表示一切正常,此時就已經是自動編譯代碼了。

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖六)

5.5.6 右鍵點選工程testndk,run as -> android application, 運作程式。當出

現圖七所示資訊時,ndk執行個體運作成功!

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖七)

6. 可能出現的問題

如圖八所示:

使用R7版NDK搭建Android開發環境[不使用Cgywin]

(圖八)

在 c 檔案中,函數名這樣定義:

java_testndk_android_hellojni_stringfromjni ,是因為這個是 jni 的标準,定義需要按照如下格式:

java_packagename_classname_methodname ,

例如: java_testndk_android_hellojni_stringfromjni

—————————————————分割線—————————————————

由于本人水準有限,所寫文字肯定會有不妥之處,歡迎牛人指出答疑,我就在此抛磚引玉了,謝謝~

簡介:09年入行,喜歡遊戲和程式設計,對3d遊戲和引擎尤其感興趣。 

版權聲明:本文版權歸作者和部落格園共有,歡迎轉載。轉載必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。

轉載:http://www.cnblogs.com/geniusalex/archive/2013/01/13/2858784.html

繼續閱讀