免费毕业论文请上zidir
基于Android平台的串口
通信实现
摘要:串口在数据通信中运用广泛,但AndroidSDK指定使用
Java作为第三方运用开发语言,这给C语言实现串口运用带来了困难。虽然GoogleAndroid已经发布了NDK(NativeDevelopmentKit,原生态开发包),支持开发者用C/C++语言开发Android
程序,但目前官方提供的技术指导比较简略。通过开发一个Android下串口通信运用实例,详细介绍了AndroidNDK的开发流程,帮助开发人员快速的完成平台搭建。关键词:Android;NDK;JNI;SDK;串口Android是Google推出的基于Linux的开源手机操作
系统,是一个专门针对移动设备
设计的
软件平台,包括操作系统、中间件和一些关键运用。它的软件架构包含四个层次,以高到低分别为运用层、运用框架层、系统运行层和
linux内核层,如图1所示。每一个Android运用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Android发布初期,Google就表示其虚拟机Dalvik支持JNI编程方式,也就是第三方运用完全可以使用JNI调用自己的C动态库,但Google官方并没有明确表示支持开发者使用这种策略。终于在2009年6月,GoogleAndroid发布了NDK,它支持开发者使用C/C++语言开发Android程序。作为AndroidSDK的一个附加组件提供,开发者必须先安装AndroidSDK方可使用NDK。NDK的目的是为了增加代码的重用性及加快程序的运行速度,这有利于开发者以其他系统上移植软件到Android平台。1AndroidNDK介绍在Android上运用程序的开发大部分基于Java语言来实现。要使用C或是C++的程序或库,就需要使用NDK来实现。NDK是NativeDevelopmentKit的简称。它是一个工具集,集成了Android的交叉编译环境,并提供了一套比较方便的Makefile,可以帮助开发者快速开发C或是C++的动态库,并自动的将so动态库和java程序打包成apk,在Android上运行。有两个理由使用NDK:一是合理的重用现有的代码;二是在程序中某些关键的部分提高执行效率。AndroidNDK目前作为AndroidSDK的一个附加组件提供,开发者须先安装AndroidSDK方可使用NDK。在Windows平台下进行NDK开发通常会采用Cygwin。Cygwin是一套可以运行在Windows平台上的UNIX/Linux模拟器。运行Cygwin后会出现一个类似WindowsCMD的Shell环境界面,可以使用大部分Linux软件和功能。使用它我们可以方便的在Windows平台编译出Linux平台的库文件或运用程序。2安装和配置NDK开发环境2.1安装NDK首先要完整安装SDK,尽量升级至最新版本,文中使用2.1版本的SDK。然后下载NDK,官网有三个版本分别是Windows、MacOSX(intel)、Linux32/64(x86),下载后解压即可使用。文中使用Windows版本的NDK,版本为android-ndk-r5。将它解压到某个目录下,文中我们将NDK安装到D:“android“android-ndk-r5目录中。2.2安装Cygwin首先去Cygwin官网下载
网络安装程序,下载下来以后点击直接运行。安装过程中最关键的是选择需要安装的包,为支持AndroidNDK的开发,选择
免费论文写作指导jhlyzz
免费毕业论文请上zidir
Default安装后再安装以下模块autoconf2.1、automake1.10、binutils、gcccore、gcc4-core、gdb、pcre、pcre-devel、GNUawk。下面开始将AndroidNDK配置到Cygwin中。运行Cygwin,修改Cygwin目录下(/home/usrname)的.bash_profile文件,在文件尾部加入如下代码,论文范
文zidir
NDK=/cygdrive/d/android/android-ndk-r5exportNDK然后重新启动Cygwin。输入cd$NDK,如果输出上面配置的/cygdrive/e/android-ndk-r5信息,则表明环境变量设置成功了。接下来就可以用Cygwin来编译我们的NDK代码了。3AndroidNDK开发实例开发实例是一个Android平台上