【Android论文栏目提醒】:网学会员为广大网友收集整理了,基于Android平台的GPS开发研究 - 毕业设计,希望对大家有所帮助!
ISSN 1009-3044 E-mail: edufcccc.net.cnComputer 26 期 2012 年 9 月第 8 卷第Knowledge and Technology 电脑知识与技术 http://www.dnzs.net.cn Computer Knowledge and Technology 电脑知识与技术 Vol.8 No.26 September 2012. Tel:86-551-5690963 5690964基于
Android 平台的 GPS 开发研究张亮 江苏 扬州 225127)(扬州工业职业技术学院 电子信息工程系, 摘要:随着基于
Android 操作系统的智能手机的迅速普及,如何利用其自带的 GPS 芯片进行定位程序开发成为研究的热 点。
该文分析了
Android 平台提供的与 GPS 开发相关的类和接口,介绍了 GPS 相关程序开发的基本步骤,对同类的研究有 一定的参考意义。
关键词:
Android;GPS;定位 中图分类号:TN929 A 文献标识码: 文章编号:1009-3044201226-6351-02 Google 公司于 2007 年发布了
Android 智能手机操作平台 这是一个由底层 Linux 系统、中间件 framework、用户 UI 和应用软件App 组成的 全面整合的移动软件平台。
自问世以来
Android 受到了业界的广泛欢迎和关注, 各种基于
Android 的智能手机的发展也极其迅猛, 目前在智能手机的市场占有率已经稳居第一。
基于
Android 的智能手机几乎都集成了 GPS 定位芯片, 因此各种基于GPS 的定位程序的开发成为一个热门的研究领域, 如何利用
Android 提供的相关类和接口来开发具有定位功能的程序, 是一个十分值得研究的课题。
1 GPS 原理 GPS 技术起源于美国军方, 其英文全称为 Global Positioning System,中文翻译为全球定位系统。
其定位的原理十分复杂, 简单 GPS的说, 系统通过获取处于高速运动中的卫星的瞬时位置来作为已知的起算数据, 然后采用空间距离后方交会的方法, 来确定待测位置的经纬度坐标。
GPS 系统由 3 大部分组成, 分别为空间星座部分、 地面监控部分和用户设备部分。
GPS 的空间部分由 21 颗工作卫星和 3 颗备用卫星组成。
这些卫星分布在距地表 20 到 200km 的上空, 4 颗为一组, 以 均匀分布在 6 个轨道面上。
之所以采用这样的分布方法, 目的是为了使用户设备无论在何时何地都能至少接收到 4 颗以上卫星的信号。
随着运行时间的增长, 现有的导航卫星可能会逐渐老化, 到时候导航精度会逐渐降低, 需要发射新的卫星进行替代。
地面监控部分也由三部分组成, 分别为主控站、监控站和地面天线。
控制站的功能是与卫星通信, 收集其传回的各种信息, 并计算卫星星历、大气校正、相对距离等数据。
用户接收设备部分是用户直接操作的部分, 主要是接收卫星发射的信号, 以获得必要的定位信息和观测量, 并对数据进行计算处理以完成最终的定位工作。
GPS 技术从问世以来, 就对人类的各种活动产生了巨大的影响。
GPS 技术覆盖了全球的每一个角落, 定位速度非常迅速,而精度又极其准确, 因此具有极高的应用价值。
可以说,这一技术的出现, 从根本上解决了一直困扰人类的如何在地球表面精确定位导 GPS航的问题。
同时, 技术使用非常简便, 普通人经过简单培训就可以使用。
同时抗干扰能力和保密性能也都非常出色, 因此完全可以满足了不同层次用户的需求, 并获得了广泛的应用。
2 相关类和接口简介
Android 操作系统提供了丰富的 Api 来实现相应的功能其中与位置服务相关的类主要有以下几个: 1)LocationManager: 该类提供了一系列的方法来访问
android 系统的位置服务功能, 通过该类提供的方法, 可以周期性的获取设备当前的地理坐标。
另外也可以使用该类来设定特定区域, 在设备进入或离开特定区域时,
Android 系统会发出程序自定义的 Intent。
2)LocationProvider: 该类主要功能是描述了当前设备能够提供定位功能的组件集合。
可能包含手机基站定位, WIFI 定位和 GPS定位等定位组件。
这些组件以不同的技术来对设备的当前位置进行定位, 其定位精度、速度和成本都各有千秋。
3)LocationListener: 这个是一个接口,用来进行事件响应。
在程序中必须先定义一个类来实现这个接口并覆盖接口中的 onLocationChanged 方法, 这样当设备的定位位置发生改变时, 会进行相应,并回调该方法中的代码。
4)Criteria: 该类用于描述希望系统提供的 Location Provider 标准,包括要求位置精度水平是高还是低、 电量消耗是大还是小、 是否希望获取海拔或方位信息、 是否允许接收付费服务等。
根据设定的标准, 系统会选择最合适的定位功能组件来定位。
收稿日期:2012-07-02 张亮 , (回族) 江苏扬州人,作者简介: (1981-) 男 , 现任扬州工业职业技术学院助教,计算机应用技术工学硕士,主要从事计算机专业 课程教学及科研工作。
本栏目责任编辑:唐一东 人工智能及识别技术 6351Computer Knowledge and Technology 电脑知识与技术 第 8 卷第 26 期 2012 年 9 月3 定位程序开发基本步骤 通过 GPS 来获取当前位置的经纬度坐标, 可以采取下列步骤: 1)通过调用 getSystemServiceLOCATION_SERVICE方法来获取当前 LocationManager 的实例。
2)选择 LocationProvider,
Android 系统中, 在 存在着 NETWORK 和 GPS 两种不同的 Location Provider, 其中 GPS 精度比较高,但是慢而且消耗电力, 而且可能因为天气原因或者障碍物而无法获取卫星信息。
而通过 NETWORK 获取坐标的优点是速度快且耗电低,但获取的坐标精确度较低, GPS 一般来说 NETWORK 得到的位置精度一般在 500-1000 米, 得到的精度一般在 5-50 米。
在应用中,为了确保能获取到位置信息, 可以采用两种 LocationProvider 同时使用的方法。
另外也可以通过设置相应的 Criteria 对象, 让系统自动选择当前最符合标准的 Provider。
3) LocationManager 注册 LocationListener 监听对象, 为 该步骤通过调用 requestLocationUpdates 方法来完成。
该方法的参数设定了当前使用的 LocationProvider 的种类, 每次更新坐标的时间间隔和当前注册的 LocationListener 的对象。
4)当客户端位置发生变化时, 负责监听的 LocationListener 对象中的 onLocationChanged 方法被触发执行, 此时可以通过调用 location.getLatitude方法和 location.getLongitude方法来获取当前的经纬度坐标值。
4 结束语 GPS 全球定位系统作为目前最流行的一种定位系统, 在各个领域的应用十分的广泛, 且对人类的生活产生了深远的影响。
随着
Android 操作系统的飞速发展和集成 GPS 芯片的智能手机的普及, 进行 GPS 定位程序开发的门槛被降到了一个十分低的位置, 原本需要大量专业设备和收费程序才能实现的功能现在利用最普通的
Android 手机平台就可以轻松实现, 且成本几乎为 0。
因此,基于GPS 的各种移动定位服务正在蓬勃发展, 掌握
Android 平台的 GPS 编程是每一个移动开发者必备的能力, 本文对这一技术领域进行了详细的介绍和分析,对相关知识的学习和研究具有一定的参考价值。
参考文献:1 郭蕊.基于
Android 平台的 GPS 定位系统J.北京工业职业技术学院学报2012112.2 倪红军.基于
Android 平台的移动终端 GPS 研究J.计算机技术与发展20125.3 百度百科.GPS 工作原理EB/OL.http://baike.baidu.com/view/7773.htm.(上接第6350页)机制进行详细介绍,并对生物免疫机制的特点进行总结。
然后针对入侵检测系统和免疫系统相似性, 构建基于免疫机制的入侵检测系统。
详细定义了系统自体和非自体的含义和匹配规则, 并对检测器生成方法和生命周期进行了描述。
最后对构建的基于免疫机制的入侵检测系统进行了仿真实验,主要观察 r 连续位匹配算法中匹配阀值 r 对检测效率的影响。
实验结果表明,对于基于免疫机制的入侵检测系统,在不考虑时间成本的前提下, 较大的 r 值生成的检测集的检测精度比较高,但这种检测精度的提高是以牺牲检测时间为代价的。
因此接下来要研究如何改进匹配算法, 更好的兼顾检测率和检测时间。
参考文献: A1 Oscar AFabio A G Fernando Net al.Search and Optimization: Solution Concept for Artificial Immune Networks: A Coevo Brazil, lutionary Perspective C.Proceedings of 6th international conference on Artificial Immune systems, 2007:26-29.2 Hofmeyr S Forrest S. Immunity by Design: An Artificial Immune SystemC//Proceedings of the 1999 Genetic and Evolution ary Computation Conference1999:1289-1296.3 杨进刘晓洁李涛等.人工免疫中匹配算法研究J.四川大学学报:工程科学版, 2008403:126-131.4 马莉.基于免疫原理的网络入侵检测器生成算法的研究D. 南京:南京理工大学硕士
论文 2006.5 卿斯汉蒋建春马恒太等.入侵检测技术研究综述J.通信学报2004257:19-29.6 焦李成杜海峰刘芳等. 免疫优化计算、 学习与识别M. 北京:科学出版社 2006.7 Dasgupta D, Gonzalez F.An Immunity-Based Technique to Characterize Intrusions in Computer Networks J.Special Issue on Artificial Immune Systems of the Journal IEEE Transactions on Evolutionary Comput- ation.2002, 63:281-291.8 Cantu-Paz E. Feature subset selection class separability and genetic algorithmsC//Proceedings of the Genetic and Evolution ary Computation Conf 2004:959-970.9 KDD cup 1999 dataEB/OL. http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html. 6352 人工智能及识别技术 本栏目责任编辑:唐一东