经过这两天的学习,了解和运用ndk , NDK全称是Native Development Kit。 NDK将是Android平台支持C开发的开端
1.java代码中写声明native方法 2.创建jni目录,编写c代码,方法名字要对应 3.编写Android.mk文件 4.NDK编译生成动态链接库 5.java代码load动态库.调用native代码
app下创建jni目录 第二步 jnitest.c
jstring Java_com_dell_android_activity_FirstActivity_stringFromJNI( JNIEnv* env,jobject thiz ) { return (*env)->NewStringUTF(env, "Hello World from JNI"); }第三步 Android.mk
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := xxxx LOCAL_SRC_FILES := jnitest.c include $(BUILD_SHARED_LIBRARY)第四步 cmd到jni的父目录,执行ndk-build,生成 .so文件 举例 要打开 F:\project_test\NDKDemo\app\jni\jnitest.c
—–打开cmd命令行窗口,cd进入目录:
F:\project_test\NDKDemo\app (jni 的父目录)
—– 用ndk来编译的批处理命令,添加到环境变量中C:\Users\DELL\AppData\Local\Android\sdk\ndk-bundle\build\
C:\Users\DELL\AppData\Local\Android\sdk\ndk-bundle\build\ndk-build.cmd (添加到环境变量直接 ndk-build.cmd )
第五步 使用 将libs 下生成的.so 文件 copy 到main 下的jniLibs 目录下 在使用的地方
System.loadLibrary("xxxx");//跟第三步 LOCAL_MODULE 名字一样参考 Windows下编译使用Android NDK,调用SO文件
AndroidStudio之NDK开发流程(手动版) 第四步?