设为首页 加入收藏

TOP

Android应用程序通过JNI调用驱动程序(友善Smart210)
2014-11-24 00:10:18 来源: 作者: 【 】 浏览:6
Tags:Android 应用程序 通过 JNI 调用 驱动程序 友善 Smart210

实现目标


------------------------------------分割线 ------------------------------------


这是我自己写的通过JNI调用Linux内核中的驱动程序来完成Android上层应用程序的代码,硬件开发平台式友善的smart210,在他家自带的系统上直接做的应用程序,希望对大家有用。以及友善smart210核心板上的四个led的驱动程序。


本文的Android源代码与Smart210的led驱动 下载


在 2014年LinuxIDC.com\4月\Android应用程序通过JNI调用驱动程序(友善Smart210)


------------------------------------分割线 ------------------------------------


开发环境


Win7 32位的系统;


开发板:友善Smart210(s5pv210);


Android版本:Android-4.0.3;


Linux内核版本:Linux-3.0.8


环境搭建以及完成JNI部分:


这里假设你的电脑上已经装好了开发应用程序的环境,其中Android sdk的下载地址为http://developer.android.com/sdk/index.html 根据自己电脑的系统来下载适合自己的sdk吧。


ndk的简介:(参考网络博客)


NDK全称:Native Development Kit。


1、NDK是一系列工具的集合。


NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。


NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编 译特性要求”等),就可以创建出so。


NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。


2、NDK提供了一份稳定、功能有限的API头文件声明。


Google明确声明该API是稳定的,在后续所有版本中都稳定支持当前发布的API。从该版本的NDK中看出,这些API支持的功能非常有限,包含有:C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。


对于Windows环境下NDK的开发,如果使用的NDK是r7之前的版本,必须要安装Cygwin才能使用NDK,所以为Eclipse需要配置的builder,其实是执行Cygwin,然后传递ndk-build作为参数。在NDKr7开始,Google的Windows版的NDK提供了一个ndk-build.cmd的脚本,这样,就可以直接利用这个脚本编译,而不需要使用Cygwin了。只需要为Eclipse Android工程添加一个Builders,就能让Eclipse自动编译NDK。


现在我们来讲解怎么搭建ndk的环境,ndk的下载地址为:https://developer.android.com/tools/sdk/ndk/index.html 下载后解压相应的ndk,我解压在D盘的android-ndk目录下,解压后的的文件为android-ndk-r9c,如下图:



1.解压完ndk后,接下来我们来在Eclipse中怎么把ndk的部分设置进去,首先打开Eclipse,创建一个新工程,我去的工程名字为:LEDAPP,包的名字为:com.ndk.led,如下图:



至于具体怎么在Eclipse下建立Android的工程,网上很多资料,只是这里需要注意,因为后边要用到所以专门弄出来说说。


2.在新建立的工程里面建立一个jni文件夹,该文件存放ndk需要编译的文件,具体为:在所建工程的名字LEDAPP上右键->New->folder,然后写入jni的名字,完成后,如图下图:



3.建立并配置Builder


(a)右键LEDAPP->Properties->Builders,如下图:



】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux重定向:将标准输出stdout和.. 下一篇Android连接到Linux/CentOS下Ecli..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: