Android开发中使用NDK在Eclipse中实现JNI技术

注:
1、环境配置请参考 http://blog.csdn.net/zhanglongit/article/details/8489538 这里不再累赘;
2、 NDK版本为android-ndk-r7-windows,此版本已经集成cygwin功能,所以不必再另外安装 cygwin;
3、CDT版本为 cdt-master-8.1.2。

第一步:新建项目
进入Eclipse,新建一个Android Project,取名TestJni。后面新建项目的步骤不再累赘。

第二步:定义接口
目前整个项目只有一个类MainActivity,在MainActivity里面定义JNI接口,添加如下代码:
public native String stringFromJNI();
public native String unimplementedStringFromJNI();

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

第三步:实现方法
在项目中添加文件夹jni,并添加两个文件:
文件一:Android.mk 其中代码如下:
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := test-jni
LOCAL_SRC_FILES := test-jni.c

include $(BUILD_SHARED_LIBRARY)

文件二:test-jni.c 其中代码如下:
#include <string.h>
#include <jni.h>

jstring Java_com_example_testjni_MainActivity_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from JNI !");
}

第四步,配置项目编译器
通过配置,使用dnk-build.cmd来编译C文件,生成so文件。配置步骤如下:
1、  右键点击工程目录依次Properties->Builders->New 选中Program 并确定;
2、Name自己指定,Location通过Browse File System 指定,Working Directory通过Browse Workspace指定;(Location选到dnk-build.cmd,Working Directory选当前的项目)


3、Refresh项若不是针对整个工作空间选择第三个即可;


4、Build Options 项所选如图;

5、Specify Resources 选中jni文件夹即可;
6、依次Finish->OK->OK。

第五步:运行项目
在MainActivity类中直接使用stringFromJNI()函数则可调用C中实现的方法。
最后运行项目则可。

参考:
http://blog.csdn.net/zhanglongit/article/details/8489538

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值