Android NDK 環境搭建
使用最新ndk,直接拋棄cygwin,以前做Android的項目要用到NDK就必須要下載NDK,下載安裝Cygwin(類比Linux環境用的),下載CDT(Eclipse C/C++開發外掛程式),還要配置編譯器,環境變數,特別麻煩,新版就不需要了
步驟 :
一、Android官網下載Android的開發工具ADT(Android Development Tool的縮寫),該工具整合了最新的ADT和NDK外掛程式以及Eclipse,還有一個最新版本SDK。解壓之後就可以用了
二、ADT外掛程式:管理Android SDK和相關的開發工具的
NDK外掛程式:用於開發Android NDK的外掛程式,ADT版本在20以上,就能安裝NDK外掛程式,另外NDK整合了CDT外掛程式
下載連結見:http://developer.android.com/sdk/index.html
三、Android官網下載最新的NDK,註:NDK版本在r7以上之後就整合了Cygwin,而且還是十分精簡版。
下載連結見:http://developer.android.com/tools/sdk/ndk/index.html
eclipse配置 :
1.開啟Eclipse,點Window->Preferences->Android->NDK,設定NDK路徑,例如Shamoo的是E:\android-ndk-r9c
2.建立一個Android工程,在工程上右鍵點擊Android Tools->Add Native Support...,然後給我們的.so檔案取個名字,例如:my-ndk
3.這時候工程就會多一個jni的檔案夾,jni下有Android.mk和my-ndk.cpp檔案。Android.mk是NDK工程的Makefile,my-ndk.cpp就是NDK的源檔案。
4.接下來仿著NDK的demo,Hello-JNI工程寫一下。使用Alt + "/'可以代碼提示!很爽!有木有?之前用CDT時候死活都按不出代碼提示,鬱悶...
5.JNI介面的命名規範是:Java_ + 調用該方法的包名(包名的點用_代替) + _ + 調用該介面的類名 + _ + 方法名,對於執行個體方法,有兩個參數是必要的,一個JNI的環境指標JNIEnv *
6.完成了,然後運行。運行之前先編譯NDK,然後在編譯JAVA代碼。編譯也許會遇到Unable to launch cygpath. Is Cygwin on the path?如何解決?如下
7.工程右鍵,點PrZ喎?http://www.bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcGVydGllcy0+Qy9DJiM0MzsmIzQzOyBCdWlsZLXEQnVpbGRpbmcgU2V0dGluZ3PW0MiltfRVc2UgZGVmYXVsdCBidWlsZCBjb21tYW5ko6zIu7rzyuTI6yR7TkRLUk9PVH0vbmRrLWJ1aWxkLmNtZDxicj4KPGJyPgo8aW1nIHNyYz0="http://www.2cto.com/uploadfile/Collfiles/20141101/20141101084240140.jpg" alt="\">
8.在C/C++ Build中點擊Environment,點Add...添加環境變數NDKROOT,值為NDK的根目錄