使用最新ndk,直接拋棄cygwin,之前作Android的項目要用到NDK就必需要下載NDK,下載安裝Cygwin(模擬Linux環境用的),下載CDT(Eclipse C/C++開發插件),還要配置編譯器,環境變量,特別麻煩,新版就不須要了。 (軟件下載百度雲連接:http://pan.baidu.com/s/1nt9g7zz 密碼:50m4)html
setp1:將下載下來的「android-ndk-r10c-windows-x86.exe」雙擊安裝,安裝完成後出現android-ndk-r10d文件夾,該文件夾爲NDK的根目錄。linux
其中 samples中爲NDK提供的實例。android
setp 2: 啓動"eclipse.exe"windows
選擇菜單欄上的[Window->Perferences->Android->NDK]設置 NDK Loaction 爲E:\Android\android-ndk-r10d;
個人電腦 添加環境變量 NDK_ROOT 爲: E:\Android\android-ndk-r10declipse
在環境變量 PATH 下追加 :%NDK_ROOT%;測試
step 3:添加測試項目hello-jniui
將ndk下samples目錄下hello-jni項目導入spa
項目導入以後,添加編譯器,選擇項目,右擊properties(NDK_builder我事先作好的,這裏咱們要new一個新的)插件
選擇programorm
下面按圖設置好
勾選項目
將編譯器up到最早位置
step 4:完成了,而後運行。運行以前先編譯NDK,而後在編譯JAVA代碼。編譯也許會遇到Unable to launch cygpath. Is Cygwin on the path?錯誤,解決辦法以下:
1.工程右鍵,點Properties->C/C++ Build的Building Settings中去掉Use default build command,而後輸入${NDKROOT}/ndk-build.cmd
2.在C/C++ Build中點擊Environment,點Add...添加環境變量NDKROOT,值爲NDK的根目錄
三、android NDK開發編譯C++文件出現Type 'jint' could not be resolved和Unresolved inclusion: <jni...
今天在編譯android NDK工程的時候,在jni文件夾下的cpp文件中報了一大堆錯誤,諸如:Unresolved inclusion: <jni.h>、Type 'jint' could not be resolved、Type 'jintArray' could not be resolved等,根據經驗,這樣的錯誤確定是沒有包含相應的頭文件致使的。
解決方案:
選中工程,右鍵->Properties,點擊C/C++ General展開,點擊 Path and Symbols,在右邊Includes下,點擊Add,把NDK文件夾下的jni頭文件和相應的C++頭文件添加進來。必定要填寫完整的路徑,好比我添加的兩個路徑分別是:
E:\AndroidNDK\android-ndk-r10c\toolchains\mipsel-linux-android-4.8\prebuilt\windows-x86_64\lib\gcc\mipsel-linux-android\4.8\include
E:\AndroidNDK\android-ndk-r10c\platforms\android-19\arch-arm\usr\include
你們在本身的NDK文件安裝目錄下參照個人路徑找到相應的include文件夾,添加包含路徑,再從新編譯,就不會報錯了。
4.再編譯,問題就解決啦!