前面一篇咱們接觸了CMake,這一篇寫寫關於ndk-build的使用過程。剛剛用到,想到哪兒寫哪兒。java
Android開發IDE版本:AndroidStudio 2.2以上版本(目前已經升級到2.2.3)android
計算機環境:Window 64位系統編程
這裏須要注意幾點:微信
(1)javah是JDK中的程序,因此須要將JDK的bin路徑添加到計算機的環境變量path中,才能在terminal中使用這個命令。app
(2)javah命令中,-d指定建立頭文件的目標路徑,-classpath指定類的路徑,因爲當前路徑是main,因此指定其中的java便可。編輯器
效果以下:gradle
這裏主要配置兩點:網站
(1)在defaultConfig節點中,添加ndk,在這裏做一個abi的過濾,(默認的abi好像是MIPS)ui
(2)在android節點中,添加externalNativeBuild節點,在裏面配置ndkBuild的makefile路徑。(用Cmake的話,也是在這裏進行配置)google
注意:通常同步工程後,編輯器就能夠找到相應的頭文件,就不會標紅報錯。
固然,即便標紅報錯,提示找不到頭文件,只要編譯時可以Build Success,工程也是可以正常運行的。
就在昨天,Google Developers中國網站開通了,喜大普奔~~23333~~
其微信公衆號是谷歌開發者
關於Android.mk的編寫,AndroidStudio上好像也無法自動生成,一直都是手動Coding。
昨天剛剛找到一個關於Android.mk的網站,先做記錄,改天再研讀一下。
這裏寫幾點這段時間用到的經驗吧:
(1)若是有多個文件夾,須要用一個Android.mk文件include全部子文件夾下面的Android.mk文件:
這個文件就是配置在build.gradle中的文件。
(2)若是在工程中須要連接一個非系統的so庫(Android系統中找不到的庫),則在Android.mk中,先對該庫進行預編譯,而後再在當前須要生成的module中連接該庫:
這樣,在生成的APK中,就能夠看到libReady.so 和當前生成的libCurrent.so都被打包在libs路徑中了。