Android Studio下的JNI開發(fā):NDK的配置硅则,你肯定不知道淹父!

隨著Android Studio的推出,越來越多的開發(fā)者都把項目從Eclipse遷移到了Android Studio上怎虫,說明Android Studio相對Eclipse來說弹灭,具有很明顯的優(yōu)勢。同樣對于JNI開發(fā)來說揪垄,Android Studio的配置比Eclipse要簡單了許多。本篇主要介紹下Android Studio的下JNI開發(fā)配置逻翁。

一饥努、直接使用.so庫

和eclipse不同,.so庫是放到j(luò)niLibs目錄下面八回,如圖:


在這里插入圖片描述

使用方式和Eclipse中一樣酷愧,直接使用System.loadLibrary("libName")加載庫。

二缠诅、使用C/C++源碼

1.下載安裝配置NDK

首先是下載NDK溶浴,可以自己下載NDK,然后解壓出來管引,然后指定NDK目錄士败,在local.properties文件中配置NDK的路徑,如圖:


在這里插入圖片描述

你也可以在Android Studio中設(shè)置一下褥伴,讓Android Studio自己下載對應(yīng)版本的NDK谅将。步驟如下:

● 在菜單欄找到"File"-"Settings",打開設(shè)置界面重慢;

● 找到"Appearance & Behavior"-"System Settings"-"Android SDK"選項饥臂,然后切換到"SDK Tool"選項卡;

● 然后找到NDK打鉤似踱;

● 點擊"Apply"按鈕隅熙,然后在彈出窗口中點擊"OK",即可自動下載核芽;

● 等待自動下載安裝完成囚戚,點擊"Finish"按鈕完成安裝。

如下圖所示:

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

Android Studio默認(rèn)安裝NDK目錄是在SDK目錄下狞洋,安裝完成后弯淘,local.properties文件中NDK路徑設(shè)置也將自動更新。
2.Gradle添加NDK模塊

打開app模組下的build.gradle文件吉懊,在defaultConfig模塊下添加ndk模塊庐橙,如圖:


在這里插入圖片描述

其中moduleName是編譯的.so的模組名稱假勿,就是原先Eclipse開發(fā)里Android.mk文件中LOCAL_MODULE變量,和System.loadLibrary()加載.so時的名稱對應(yīng)态鳖。例如moduleName配置為"JniTest"转培,則.so文件名稱為"libJniTest.so",加載時浆竭,名稱為System.loadLibrary("JniTest")浸须;

abiFilters指定要分配的平臺,如果未指定邦泄,則將編譯所有支持的平臺删窒。目前支持的平臺有"armeabi"、"armeabi-v7a"顺囊、"arm64-v8a"肌索、"mips"、"mips64"特碳、"x86"诚亚、"x86_64"這七個;

ldLibs是要鏈接的庫午乓,就是原先Android.mk里L(fēng)OCAL_LDLIBS變量指定的庫站宗。

3.添加C/C++文件

默認(rèn)情況下,C/C++文件一般放在[module]/src/main/jni/目錄下益愈,如圖:


在這里插入圖片描述

當(dāng)然梢灭,你也可以修改build.gradle配置,指定其他路徑蒸其。在"android.sourceSets.main"模塊里或辖,使用"jni.srcDirs"指定jni的路徑,如下圖:


在這里插入圖片描述

至此枣接,Android Studio下開發(fā)JNI的基本配置就結(jié)束了颂暇,下一篇將介紹一下Android Studio下C/C++代碼編寫與編譯。有興趣的童鞋可以關(guān)注一下但惶,后期將持續(xù)更新耳鸯。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市膀曾,隨后出現(xiàn)的幾起案子县爬,更是在濱河造成了極大的恐慌,老刑警劉巖添谊,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件财喳,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機耳高,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進(jìn)店門扎瓶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人泌枪,你說我怎么就攤上這事概荷。” “怎么了碌燕?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵误证,是天一觀的道長。 經(jīng)常有香客問我修壕,道長愈捅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任慈鸠,我火速辦了婚禮改鲫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘林束。我一直安慰自己,他們只是感情好稽亏,可當(dāng)我...
    茶點故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布壶冒。 她就那樣靜靜地躺著,像睡著了一般截歉。 火紅的嫁衣襯著肌膚如雪胖腾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天瘪松,我揣著相機與錄音咸作,去河邊找鬼。 笑死宵睦,一個胖子當(dāng)著我的面吹牛记罚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播壳嚎,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼桐智,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了烟馅?” 一聲冷哼從身側(cè)響起说庭,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎郑趁,沒想到半個月后刊驴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年捆憎,在試婚紗的時候發(fā)現(xiàn)自己被綠了舅柜。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,625評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡攻礼,死狀恐怖业踢,靈堂內(nèi)的尸體忽然破棺而出窟哺,到底是詐尸還是另有隱情袁滥,我是刑警寧澤按傅,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布贬堵,位于F島的核電站笋粟,受9級特大地震影響鲤桥,放射性物質(zhì)發(fā)生泄漏壳炎。R本人自食惡果不足惜贬蛙,卻給世界環(huán)境...
    茶點故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一僚焦、第九天 我趴在偏房一處隱蔽的房頂上張望锰提。 院中可真熱鬧,春花似錦芳悲、人聲如沸立肘。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谅年。三九已至,卻和暖如春肮韧,著一層夾襖步出監(jiān)牢的瞬間融蹂,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工弄企, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留超燃,地道東北人。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓拘领,卻偏偏與公主長得像意乓,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子约素,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,492評論 2 348

推薦閱讀更多精彩內(nèi)容