下面內容均是基于Linux下到設置,如需要在Windows下設置,可參考關于Cygwin的使用。
部分轉自:http://eshock.blogbus.com/logs/61459223.html
前言
Android系統中的應用程序都是用Java開發的。Android NDK使我們能夠在android上使用C/C++開發的原生代碼。有兩個理由使用NDK:
一是合理的重用現有的代碼;
二是在程序中某些關鍵的部分提高執行效率。
這里先講幾個符號的約定:
<project> - 你的Android應用程序工程的目錄
<ndk> - 你的ndk安裝的目錄
捷徑
這里先扯一句題外話 -- 如果你不需要使用NDK開發,只是需要使用第三方用NDK開發的庫,那么你只需要這樣做:
把第三方提供的libxxx.so放到你的<project>/libs/armeabi/下, 然后在程序隨便什么地方中加入
Java代碼

static
{
System.loadLibray("xxx");
}
就可以使用該庫了。
安裝NDK
NDK的安裝很簡單:
1. 首先要將SDK升級至最新,然后下載ndk(可能要翻下墻,恩恩)將它解壓到某個目錄<ndk>下。
其實,下載地址沒有被和諧,輸入
http://dl.google.com/android/ndk/xxxx.zip是可以直接下載的
用在線代理看下到 http://developer.android.com/sdk/ndk/
最新的版本,例如:
把xxxx替換成圖中的版本號:
http://dl.google.com/android/ndk/android-ndk-r4b-linux-x86.zip
直接下載即可
2. 運行: <ndk>/build/host-setup.sh
這步已經不必要了
However, this step has been removed in release 4 (a.k.a. r4).
注意,應養成讀文檔的習慣,文檔中往往都對本軟件或者包的使用有詳細說明。
筆者最初按一本Android的參考書來做,安裝了上面講的一個較老版本,然后需要運行 /build/host-setup.sh命令,然后出現過詭異現象,后來Google到方法(http://blog.chinaunix.net/u3/114712/showart_2246264.html),雖然最終解決了,但是還是推薦用新的版本,無論是ndk還是常用的sdk,更新都是比較快的,所以學習的時候,多網絡下,多去官方網站看看,與大牛們多做交流。
3. 把<ndk>加入到環境變量中,然后到<ndk>/samples/hello-jni/下運行ndk-build,看能否生成
libhello-jni.so
關于環境變量的設置
首先通過命令:gedit ~/.bashrc進入編輯,在最后一行敲入下面內容,其中/usr/local......顯然為sdk或者ndk的安裝路徑,另注意sdk中:usr/lib/eclipse:$PATH 在Linux中,以":"來作為間隔,當然也需要你下好eclipse,在Ubuntu中,用軟件中心搜一下就能下到eclipse,然后按照Windows下安裝Android ADT和SDK的方法安裝就行了。
#android sdk
export PATH=/usr/local/android-sdk/tools:usr/lib/eclipse:$PATH
#android ndk
export PATH=$PATH:/usr/local/android-sdk/android-ndk-r4b
NDKROOT=/usr/local/android-sdk/android-ndk-r4b
export NDKROOT
保存退出后,命令: source ~/.bashrc 保存修改(既然在Gedit中保存過了,是否就可以不用了呢,有待驗證)
(上面兩句設置后)以后可在命令行敲入:cd $NDKROOT
就會發現,進入了NDKROOT下設置的路徑,如此可方便很多,可進行推廣應用。
環境變量的設置還有其他方法,我們會在后面的文章中轉載一些文章做些說明。
4. 如果成功的話就OK了,如果失敗的話檢查一下你是不是下載了正確的ndk版本(例如你的操作系統是linux而下載了windows版的ndk).