具体解释Android定位

相信非常多的朋友都有在APP中实现定位的需求,今天我就再次超炒冷饭,为大家献上国内开发人员经常使用到的三种定位方式。它们分别为GPS,百度和高德,惯例先简介下定位的背景知识。

什么是GPS定位、基站定位和Wi-Fi定位?

1、GPS定位:依据设备GPS芯片和GPS卫星实现定位,GPS定位在室内是不能够使用的。GPS定位精度和芯片本身以及实际使用环境有关,普通情况下。GPS定位精度在10m左右。

2、基站定位:依据设备获取的基站信息实现定位,基站定位精度一般不受使用环境影响。主要和基站的覆盖半径有关。

基站定位服务精度眼下在200m左右。

3、Wi-Fi定位:依据设备获取的Wi-Fi的信息进行定位,Wi-Fi定位精度一般不受使用环境影响,主要和Wi-Fi半径,密度有关。Wi-Fi定位精度眼下在20m左右。

眼下智能手机都内置了GPS芯片,相相应的各个手机系统厂商也开放了对外的GPS接口。可是因为GPS受外界因素影响比較大。一般的APP也都是室内使用,所以严重影响到了GPS搜星的数量。只是曾经在外包公司接手过这么一个项目,主要面向室外的骑行爱好者使用,满足他们骑行路线的绘制。面对这样一个需求。GPS定位是最靠谱的选择了,可是伤不起的耗电量呀。

所以一般比較靠谱的方式,就是使用百度高德这些企业为开发人员提供的成熟方案,能够选择混合定位的方式以应对APP复杂的实际使用情况。混合定位就是使用以上三种定位技术,选择最优的方式去获取当前的地理位置。以下来介绍下今天为大家带来的简单实践。

一、GPS定位

没有特别的业务需求。请慎用GPS定位,选用NETWORK_PROVIDER是个不错的选择。另外。大家有没有发注意到,通过GPS能够获取当前时间,在获取不到准确时间的时候是个不错的选择。

2、百度定位

百度定位的location里包括了非常多的信息。足以应付我们工作的须要了。

百度定位Jar包大小180Kb,相对来说还是能够接受的。

百度的三种定位策略也正好是相应上述我们背景介绍的三种定位技术。

三、高德定位

高德定位回调的位置信息也是比較丰富的,并且依赖包大小140kb。一般我工作中定位都是用高德。

备注:通过Android系统的LocationManager去定位也是满靠谱的,室外需求使用GPS provider,室内使用Network provider;定位的经度和效率也是能够接受的,并且还不用依赖第三方包。不会添加程序的体积。

可是非常多业务情形下。我们不止想得到简单的经纬度信息,我们还须要城市、邮编、详细的位置等信息。

代码地址:https://github.com/JackCho/LocationDemo

假设认为对你有所帮助,欢迎大家订阅我的微信公众账号——Android干货分享(ID:android_share)

以下是微信的二维码,为你提供及时高质的Android干货。技术交流QQ群:318588906,欢迎大家加群,共同探讨下Android和Java技术,一起壮大我们的微信干货分享社区。

时间: 2024-11-08 11:04:58

具体解释Android定位的相关文章

android 定位一般有四种方法

android 定位一般有四种方法,这四种方式分别是:GPS定位,WIFI定准,基站定位,AGPS定位,                             (1)Android GPS:需要GPS硬件支持,直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块(现在大部分的智能机应该都有了).通过GPS方式准确度是最高的,但是它的缺点也非常明显:1,比较耗电:2,绝大部分用户默认不开启GPS模块:3,从GPS模块启动到获取第一次定位数据,可能需要比较长的时间:4,室内几乎无法使用.

android 定位的几种方式介绍

[地理位置] android 定位的几种方式介绍 开发中对于地图及地理位置的定位是我们经常要用地,地图功能的使用使得我们应用功能更加完善,下面 www.androidkaifa.com 总结了一下网络中现有对于介绍android定位的几种方式,希望对大家有帮助: android 定位一般有四种方法,这四种方式分别是:GPS定位,WIFI定准,基站定位,AGPS定位, (1) Android GPS:需要GPS硬件支持,直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块(现在大部分的智

android 定位的四种方式

[原文] 开发中对于地图及地理位置的定位是我们经常要用地,地图功能的使用使得我们应用功能更加完善,下面总结了一下网络中现有对于介绍android定位的4种方式,希望对大家有帮助: android 定位一般有四种方法,这四种方式分别是:GPS定位,WIFI定准,基站定位,AGPS定位,                             (1)Android GPS:需要GPS硬件支持,直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块(现在大部分的智能机应该都有了).通过GPS方

Android 定位服务(Location-Based Services)

Android定位服务融合了GPS定位.移动通信.导航等多种技术,提供与空间位置相关的综合应用服务.近些年来,基于位置的服务发展更为迅速,涉及商务.医疗.工作和生活的各个方面,为用户提供定位.追踪和敏感区域警告等一系列服务. Android平台支持提供位置服务的API,在开发过程中主要使用LocationManager和LocationProviders对象. - LocationManager: 用来获取当前位置,追踪设备的移动路线,或设定敏感区域,在进入或离开敏感区域时设备会发出特定警报.

六 APPIUM Android 定位方式

文本转自:http://www.cnblogs.com/sundalian/p/5629500.html APPIUM Android 定位方式 1.定位元素应用元素 1.1通过id定位元素 Android里面定位的id一般为resrouce-id: 代码可以这样写: WebElement element = driver.findElement(By.id("com.tencent.mm:id/do")); 或者: driver.findElementById("com.t

Android 定位服务(转载)

今天因为工作需要,把以前编写的一个GPS测试程序拿出来重新修改了一下.这个程序说起来有些历史了,是我11年编写的,那时候学了Android开发没多久,算是一个实验性的作品.现在工作需要,重新拿出来修整.同时发现我对android的GPS服务了解并不深,所以今天特意阅读了有关GPS服务的一些资料,把相关知识点记录下来. 本人做了GPS相关的嵌入式软件已经几年了,所以说起要做个测试GPS定位模块的程序,第一反应就是串口读取GPS模块的数据,然后解析GPS的NMEA格式数据.NMEA是一种标准化数据格

发现最新版百度Android 定位SDK v6.1.3 网络定位bug

对于百度地图已经实在忍无可忍了,实验室两年以前的一个项目用到了百度地图,以前师兄毕业了,我来维护这个破项目,百度地图推出新版本出来后,老版本的api不能用了,你就不能做到向下兼容吗?换掉少量的api也就算了,居然整体风格都换了,大爷的,我得先学老版本的api看懂师兄留下的代码,再学新版本的api修改这个项目,这也没啥,然而你新版本官方demo怎么还留bug!!折腾一天后发现,这是百度Android 定位SDK的bug,不是我自己的代码的问题的感觉很奇妙有木有!!! 使用百度官网提供的demo学习

Android定位

大家去网上搜索Android定位location为null没法定位问题,估计有一大堆文章介绍如何来解决,但是最后大家发现基本没用.本文将从Android定位实现原理来深入分析没法定位原因并提出真正的解决方案.在分析之前,我们肯定得先看看android官方提供的定位SDK. 默认Android GPS定位实例 获取LocationManager: mLocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVI

详解Android定位

相信很多的朋友都有在APP中实现定位的需求,今天我就再次超炒冷饭,为大家献上国内开发者常用到的三种定位方式.它们分别为GPS,百度和高德,惯例先简单介绍下定位的背景知识. 什么是GPS定位.基站定位和Wi-Fi定位? 1.GPS定位:根据设备GPS芯片和GPS卫星实现定位,GPS定位在室内是不可以使用的.GPS定位精度和芯片本身以及实际使用环境有关,一般情况下,GPS定位精度在10m左右. 2.基站定位:根据设备获取的基站信息实现定位,基站定位精度一般不受使用环境影响,主要和基站的覆盖半径有关.