windows android jni,手把手教你写JNI(android NDK)

本例是通过JNI调用,并不是通过系统的类来调用。

1.首先调用流程:

APP->HAL->JNI->内核驱动

2.具体流程:

2.1下载NDK

我下的是:android-ndk-r14b-windows-x86_64.zip

2.2解压该压缩包至某个文件夹

2.3打开eclipse->window->preferences->Android->NDK

浏览选中刚才的路径,我的是:E:\javaee\my\android-ndk-r14b-windows-x86_64

如果出现 Not a valid DNKdirectory

就在刚才的目录即E:\javaee\my\android-ndk-r14b-windows-x86_64\下新建一个文件ndk-build

2.4   新建一个Android工程

新建一个jni文件夹

选中工程,右键进入properties选项

Builder->new->Program & OK->

在“Name“中输入新builders的名称(这个名字可以任意取)。

设置如下

Location为ndk-build.cmd的路径,路径如图。working Directory就点击Browse Workspace选中当前项目即可

继续

Build Options勾选项如图,另外点击右边的Specify Resources里选中工程刚才刚才创建的jni文件夹

点击OK

OK

2.5 声明本地方法

在Activity里声明你要调用的方法

例如我的:publicnative String gpsopen(String str);

2.6用cmd生成一个.h的样式文件

Win+R

Cmd

将src目录下刚才生成的.h头文件复制到工程的jni目录下

在jni目录下编写.c文件,例如gps.c

将.h头文件里面的内容复制过来

添加一个#include

并实现调用函数的内容

例如:

函数内部的内容自己按自己的需要实现就好了

新建文件下,文件夹里新建Android.mk

其内容如下:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    :=gpsbdshow //要生成的包名,会生成gpsbdshow.so

LOCAL_SRC_FILES :=gpsbdshow.c//要编译的本地文件

#liblog.so libGLESv2.so

LOCAL_LDLIBS +=-llog

include $(BUILD_SHARED_LIBRARY)

include $(call all-makefiles-under,$(LOCAL_PATH))

等会将所有文件(JNI,Src,Androidminifast…)等文件一起放入ubuntu的Android目录下编译生成.So库文件

编写号.mk后,右键项目->buildproject

编译完成,正常生成 *.so

就可以直接在目标机上运行

也可以将其目录下的 *.apk复制到目标机安装运行。

当然这些内容只是一个JNI程序例程,并不是串口,串口的内容后续再补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值