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);