Android Studio進行JNI開發的操作過程

之前一直在Eclipse上進行的JNI開發,最近在Android上進行開發的時候,發現都不知道該怎麼去做。後來通過百度把問題解決了,下面把開發的流程記一下,方便學習和複習:
預備工作:
第一步,安裝NDK,可以在SDK tools中直接下載:
這裏寫圖片描述
第二步:配置系統環境。當安裝完之後,進入sdk的目錄下(注意不要有中文路徑!),找到ndk-bundle的文件夾:
這裏寫圖片描述
第三步:進入ndk-bundle目錄,拷貝ndk-bundle的資源路徑,打開環境變量設置,將其添加至環境變量path中:
這裏寫圖片描述
到此,預備工作結束。如果前面已經進行過先關操作,可以無視,直接進入開發的過程啦~,下面以一個例子進行說明:
第一步:創建一個新的項目,將項目結構切換至project層次,找到local.properties,打開,確認 是否添加到了ndk路徑,如果沒有,手動添加,注意要進行語義轉換。
這裏寫圖片描述
第二步:打開gradle.properties,在底部添加以下代碼,兼容老版本的ndk:

android.useDeprecatedNdk=true

第三步:
在類中聲明native方法,並且設置加載動態鏈接庫:
這裏寫圖片描述
第四步:
在mian目錄下,新建一個jni(與java項目同級)的文件夾,裏面存放c代碼,例如:
這裏寫圖片描述
第五步,打開build.gradle,在android{
。。。
}
中添加以下代碼

sourceSets {
            main {
             jni.srcDirs=[]
             jniLibs.srcDir 'src/main/jni_src'//告知jni源碼目錄
            }
        }
        ndk{
            moduleName "Hello"//動態鏈接庫名稱與這裏一致
            abiFilters "armeabi", "armeabi-v7a", "x86"
        }

添加完畢之後,rebuild project,成功後在app->build->intermediates目錄下發現有一個ndk的文件夾,裏面便存放着編譯後的so文件
這裏寫圖片描述
接下來,就可以在項目中調用native方法啦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章