1. 程式人生 > >筆記80 | Eclipse環境下利用NDK編譯SO檔案

筆記80 | Eclipse環境下利用NDK編譯SO檔案

準備

1.Eclipse工作環境

2.NDK

下載地址 ,選擇一個版本對應下載之後解壓,注意路徑不要有中文,請直接使用版本【android-ndk-r14b】,不要問為什麼,都是淚;

然後再環境變數的path中新增路徑;如圖

image.png

接著cmd中輸入ndk-build,如果跟我顯示一樣,就說明ndk環境可以使用了

image.png

接著在eclipse中新增路徑:

image.png

程式碼

我這裡使用ndk自帶的一個例子【hello.jni】,將專案匯入到工作區間如圖

image.png

會多一個jni的資料夾

      LOCAL_PATH := $(call my-dir)

      include $(CLEAR_VARS)

      LOCAL_MODULE    := hello-jni   //要生成的檔名字

      LOCAL_SRC_FILES := hello-jni.c //需要編譯的原始檔  .c是C檔案;.cpp是C++檔案

      include $(BUILD_SHARED_LIBRARY)

APP_ABI := all   //指定生成的平臺

3.hello.jni.c

C檔案內容,就是一些呼叫的方法集合,生成so包之後,APP可以用來呼叫這些方法跟底層互動;

生成

cmd中,首先cd到當前專案的目錄,然後ndk-build,然後就完成了

image.png

在專案中,會多了一個obj資料夾,生成的so就在裡面:

image.png