您的位置:首页 > 其它

编写第一个jni入门程序

2016-08-26 15:21 232 查看

1:首先,开发之前,我们有必要先了解ndk与jni,可能有很多人都知道这2个单词,甚至它们的全称,但它们到底与Android有什么联系,可能就很少人知道,或者只懂皮毛。下面我就附上一个链接,介绍Android的ndk/jnide

使劲的戳这里

2:下面就开始进入正题。。。。首先需要配置NDK的环境配置,博主用的是



各种环境搭好了,在新建Android工程,并且在这个工程目录下新建一个名为jni的文件夹(这个名必须是jni,不能是别的),然后在jni文件夹目录下新建一个名为Android.mk和Application.mk的file文件(名称就是这样,规范些),如下图:



其次在编写一个native方法。如下图:



下面就开始生成.h的头文件了

在cmd中是进入到你项目的src目录下,输入:javah  com.example.lianshou_test.jni.HelloJni  回车就可以了

这是刷新工程文件,把生成的.h文件剪切到jni文件夹中。其次在新建一个同名的.c方法实现文件。

现在开始编写建好的文件了,首先在Android.mk中编写最基本的代码:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := henryjni
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := HelloJni.c
LOCAL_C_INCLUDES :=$(JNI_H_INCLUDE)
LOCAL_LDLIBS := -llog

LOCAL_SHARED_LIBRARIES := liblog libcutils
LOCAL_PRELINK_MODULE := false

include $(BUILD_SHARED_LIBRARY)
至于上面为什么这样写?分别是什么意思?戳这里

在application.mk中输入:

APP_ABI := armeabi armeabi-v7a x86
APP_PLATFORM := android-14

最后在java的程序入口类中写入

static{
System.loadLibrary("henryjni");
}
到这里基本完成了百分之90了。最后在cmd中输入:ndk-build

编译生成相应的so文件。大功告成了。。。。




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: