今天因为工作须要,把以前编写的一个GPS测试法度榜样拿出来从新修改了一下。这个法度榜样说起来竽暌剐些汗青了,是我11年编写的,那时刻学了Android开辟没多久,算是一个实验性的作品。如今工作须要,从新拿出来修整。同时发明我对android的GPS办事懂得并不深,所以今天特意浏览了有关GPS办事的一些材料,把相干常识点记录下来。

本人做了GPS相干的嵌入式软件已经几年了,所以说起要做个测试GPS定位模块的法度榜样,第一反竽暌功就是串口攫取GPS模块的数据,然后解析GPS的NMEA格局数据。NMEA是一种标准化数据格局,不仅仅GPS上应用了,其他一些工业通信也是应用这种标准化数据格局。解析相干数据然后显示出来,就完成了一个根本的GPS定位测试功能。

查了一下才发明Android上做GPS相干定位办事,不须要攫取NMEA数据分析,Android已经封装好了相干办事,你要做的就是调用API。这个不知道应当认为爽照样认为纠结。(Android也供给了攫取NMEA接口,下面会说到)

下面我们先来看看Android有关定位办事供给的支撑:

Android定位办事都是位于location下,膳绫擎都有相干解释,这里就不具体解析。有一点有须要说说的是:GpsStatus.NmeaListener 官方的说法是可以攫取NMEA数据,然则我这里测试发明,并没有攫取到NMEA的数据。查阅过一些材料,说是google在底层并没有实现数据反馈的功能。有时光,须要查看一下源码。

2、LocationManager定位

1、Android 定位办事//获取定位办事

LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);

//断定是否已经打开GPS模块

if (locationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER)) {

//GPS模块打开,可以定位操作

}

// 经由过程GPS定位

String LocateType = locationManager.GPS_PROVIDER;

Location location = locationManager.getLastKnownLocation(LocateType);

// 设置监听器,设置主动更新舅鏊殁里设置1000ms,移动距离:0米。

locationManager.requestLocationUpdates(provider, 1000, 0, locationListener);

// 设置状况监听回调函数。statusListener是监听的回调函数。

locationManager.addGpsStatusListener(statusListener);

//别的给出 经由过程network定位设置

String LocateType = locationManager.NETWORK_PROVIDER;

Location location = locationManager.getLastKnownLocation(LocateType);

3、GpsStatus监听器

膳绫擎给出了定位办事的初始化设置步调,但我们都知道GPS卫星是按期广播数据的,也就是说会按期收到卫星的GPS数据。我们并不克不及跟卫星主动申请数据,只能被动吸法术据。(中国的北斗2倒是可以发送卫星报文给卫星)是以我们须要注册一个监听器来处理卫星返回的数据。private final GpsStatus.Listener statusListener = new GpsStatus.Listener() {

publicvoid onGpsStatusChanged(intevent) {

// GPS状况变更时的回调,获取当缁ご态

GpsStatus status = locationManager.getGpsStatus(null);

//本身编写的办法,获取卫星状况相干数据

GetGPSStatus(event, status);

}

};

4、获取搜刮到的卫星private void GetGPSStatus(intevent, GpsStatus status) {

Log.d(TAG, "enter the updateGpsStatus()");

if (status == null) {

}

推荐阅读

【51CTO.com原创稿件】作为“聪明科技”的代名词,无人店同夏末高温一样火热不退。无人店,顾名思义就是借助RFID、智能付出、图像辨认等高科技手段实现店内无人经营的状况,如许>>>详细阅读

地址:http://www.17bianji.com/lsqh/37106.html

android 定位服务 耗电吗,关于Android的定位服务相关推荐

  1. Android高手笔记 - 耗电优化

    耗电的背景知识 电池技术:电池容量,充电时间,寿命,安全性: 电量和硬件:应用程序不会直接去消耗电池,而是通过使用硬件模块消耗相应的电能:CPU.屏幕.WiFi 和数据网络.GPS 以及音视频通话都是 ...

  2. Android 停车地图及停车导航,停车场蓝牙定位导航方案

    停车场蓝牙定位导航方案基于微能信息开发的蓝牙定位系统方案,与固有停车场管理系统深度结合,为顾客在智能手机终端提供全方面的停车场空余车位导航.记录停车位.反向寻车.查找路线.查找公共设施等服务. 停车场 ...

  3. [原创] 海外地图服务Here Map在Android 端的使用介绍

    目录 前言 1. Here地图Android SDK几个版本对比 2. 申请Here地图服务的 Credentials key 3. 开始集成第一个Here 地图 结语 前言 说起导航地图,无论是在手 ...

  4. 基于android的实时定位别人的手机,基于Android智能手机的人员定位系统的开发与实现...

    摘要: 目前国内外基于位置的服务开展如火如荼,拓展GPS功能已经成为手机应用开发的一个热点.本文基于Android系统智能手机,以WebGIS技术的应用为重点,主要对基于Android平台的手机客户端 ...

  5. android定位打卡实现,基于Android移动定位课堂考勤系统设计与实现.doc

    基于Android移动定位课堂考勤系统设计与实现 基于Android移动定位课堂考勤系统设计与实现 摘 要: 为促进高职院校课堂考勤管理工作的规范化,提高课堂考勤管理水平,使用PHP语言开发了Web服 ...

  6. android app gps 定位权限,uniapp 打开[ios/安卓]GPS定位权限

    如何检测GPS有没有开启我是写在高德地图API接口中fail函数里的 openGps(){ let system = uni.getSystemInfoSync();// 获取系统信息 if (sys ...

  7. Android百度地图开发(二)定位之自动定位及标注(及定位几日内瓦或坐标4.9E-324问题)

    接上篇Android百度地图开发(一)之Hello BaiduMap 1.环境配置: 新增权限如下 <!-- 这个权限用于进行网络定位--> <uses-permission and ...

  8. android手机无法开机到桌面问题,定位方法

    关于启动过程的流程,详见之前的一篇技术文档. Android 启动过程框架 这节我们来进行分析,跟踪下如何定位无法启动到桌面的问题. 主要步骤为: 先看启动时的logo,第二次logo会有个亮屏,看到 ...

  9. 超详细的Android百度地图开发:在APP上定位并显示出来

    超详细的Android百度地图开发:在APP上定位并显示出来 一 写在前面 二 注册百度开发者账户.申请API KEY 三.代码实现 四.问题 五.总结 一 写在前面 由于项目所需,我需要在手机APP ...

最新文章

  1. 给你的网站穿上外衣 - HTTPS 免费部署指南
  2. hdfs通过接口退出安全模式_Hadoop之HDFS简介
  3. 关于 SAP Spartacus 电商云 UI feature level 的测试步骤
  4. PLSQL 循环游标 cursor loop fetch into
  5. 颈椎病分型及对症治疗
  6. 框架源码专题:Spring是如何解决循环依赖的?
  7. go 自定义error怎么判断是否相等_「GCTT 出品」Go 系列教程——30. 错误处理
  8. 计算机的cpu怎么设计出来的,CPU是如何制作出来的?cpu的制造流程介绍
  9. content=IE=edge,chrome=1的meta标签内容
  10. 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件的解决办法
  11. 牛顿插值法 matlab程序计算方法,(最新整理)牛顿插值法matlab程序
  12. 基于全志a31s的camrea驱动调试(gc2145型号)
  13. CnOpenData中国各区县工商注册企业分年份数量统计(含新增,注销企业数量)
  14. python中value的含义_生成的scikit学习决策树中的value属性的含义是什么?
  15. Android studio3.2 分配内存设置方法
  16. windows 10 安装 jdk15 教程
  17. 【刷题】BZOJ 2959 长跑
  18. tdm的应用计算机,2020计算机考研:TDM时分复用技术备考小知识点
  19. Linux超级用户(root)的密码
  20. 【报告分享】2021直播电商年度数据报告-抖音快手-果集数据(附下载)

热门文章

  1. PG通用(常用)功能
  2. Selenium3+python自动化009- 多选框
  3. log4j警告:WARN Please initialize the log4j system properly 的解决方法
  4. lastpass密码管理工具使用教程
  5. 并发编程6 锁进程队列
  6. Maven--传递性依赖和依赖范围
  7. 安全测试中常见的术语
  8. 数字证书管理工具keytool常用命令介绍
  9. 动态资料导出导入平台(一)
  10. ArcGIS Server for Silverlight 之集群(Simple Clusterer)