eclipse中開發NDK以及環境搭建(一)


前言:

NDK:即Native Development Kit,用它開發c/c++是很方便的。

這里是基於r13b的開發的,但r13b中沒有samples這個文件,所以需要下載以前的版本中的samples,samples中包含的是官方的例子。

准備工具:

既然開發NDK,那eclipse和AndroidSDK那肯定是必須的。

下載NDK包,android Studio中可直接下載,eclipse應該也可以,沒嘗試,現在是直接下載NDK包,解壓的合適的位置,和SDK一樣,路徑不能出現中文。

配置環境變量,主要是兩處,二是NDK_ROOT(需要自己創建),變量值是NDK的路徑,一是Path,將剛創建的NDK_ROOT追加到Path后。

 

打開cmd命令行,輸入ndk-build出現如下字符即可

到此NDK的環境變量配置成功。

打開eclipse

Window—>Prefernces—>Android—>NDK選擇你NDK Location的存放路徑(我這有2個Android選項,我怕出問題,所以2個都選了)。

 

將samples復制android-ndk-r13b中(NDK根目錄)

官方給的只有c文件,沒有.so,需要自己生成,好像在6版本以前的裝cygwin,現在不需要了,直接com窗口,cd到samples的hello-jni中(hello-jni就是官方給出的例子)

再輸入命令行:NDK路徑(NDK環境變量的變量值)/ndk-build
此時會對hello-jni工程進行編譯生成一個libs文件夾,里面存放在生成libhello-jni文件,也就是我們所需要的.os文件。

將hello-jni導入工程,會發現它比以前的工程多了幾個文件夾,分別是jni,libs和obj,其中jni是自帶的,剩下的2個是剛才com是創建編譯的。

進入jni下的hello—jni.c

開頭的Java_com_example_hellojni_HelloJni_stringFromJNI很重要,java表示java要用到,黃色的部分是你的包名,紅色的是你的類名,藍色的是方法名。

HelloJni.java文件

此時運行程序就能看到 “這是我的JNI” 這句話,此上是運行官方的例子。

需注意,如想改變“這是我的JNI”,需將.c的文件改變,並重新com窗口編譯出新的.so文件才可以。

 

 

 

官方例子就此跑通,但我們如果想在NDK中跑自己的C程序,還需要一些另外的步驟。

如果你要是需要引用別人的.so文件,需要知道對方的包名,類名和方法名(很重要這點)。

至於自己的C程序編譯成.so,得等我熟悉C語言后才能更新


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM