1. 程式人生 > >android studio ndk開發總結

android studio ndk開發總結

javah 打印格式 tar link lis targe 簡單 執行 native

1、path環境變量

2、android studio關聯ndk

local.properties ndk.dir

gradle.properties android.useDeprecatedNdk=true//兼容老版本

3、build.gradle 配置

defaultConfig{

    ndk{

        moduleName "Hello"

        abiFilters ‘‘armeabi","armeabi-v7a","x86"

}

}

4、根據上層java 的native 函數,可自動生成 對應的頭文件

控臺執行:javah -calsspath . 路徑文件

5、使用android_log_print需要再編譯配置中加入log庫

如果你用的是正式版gradle,在ndk標簽中加入 

ldLibs "log" 
如果你用的是實驗版gradle,在ndk標簽中加入: 

ldLibs.add("log") 
如果你使用CMakeLists,在target_link_libraries標簽中加入log
如果你使用的是MK文件,加入如下語句: 

LOCAL_LDLIBS := -llog 
//打印一個簡單Info級別的日誌 對應Java的Log.i("JNI","This is log")
__android_log_print(ANDROID_LOG_INFO,"JNI","This is log"); //打印格式化字符串 這裏使用的是C語言中printf中的格式。關於C中的printf格式化輸出可自行百度,文檔非常多。 int i=5; __android_log_print(ANDROID_LOG_INFO,"JNI","i=%d",i);

android studio ndk開發總結