小白鼠初试NDK

1.下载NDK(可以从Android Studio的SDK manager中下载),并配置环境变量(新建NDK_ROOT对应I:\Android\SDK\ndk-bundle并在path添加%NDK_ROOT%)

2.项目右键->new->folder->jnifloder

3.jni目录右键->new->c/c++ source file->添加hello-jni并选择.c类型

4.打开hello-jni.c文件,编写如下代码:

#include

JNIEXPORTjstringJNICALL

Java_com_cn_demo_MainActivity_getStringFromJNI(JNIEnv*env,jobject*object) {

return(*env)->NewStringUTF(env,"Hello from JNI!");

}

5.JNI方法构造为"Java+包名+调用的类名+调用方法名"

6.在jni目录下新建Android.mk的txt文档并输入以下代码:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE :=hello-jni

LOCAL_SRC_FILES :=hello-jni.c

include $(BUILD_SHARED_LIBRARY)

7.LOCAL_MODULE对应System.loadLibrary调用的名称,LOCAL_SRC_FILES对应调用的.c文件

8.在modlue的build.gradle对应的android中添加编译代码如下:

externalNativeBuild{

      ndkBuild{

                  path file("src/main/jni/Android.mk")

      }

}

9.在MainActivity加载和调用如下:

static{System.loadLibrary("hello-jni");}

public nativeString getStringFromJNI();

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容