android 定位 策略

Android定位方式
  Android常用的三种定位方式有:基于GPS定位、基于基站定位、基于wifi定位。
  1)基于GPS定位
   GPS定位需要GPS模块(硬件)的支持,没有GPS模块是无法进行GPS定位的。
   GPS定位最大的优点就是其定位精确度高;缺点就是耗电高、定位慢、室内和地下室基本定位不到。
  2)基于基站定位
   根据采集到手机所处基站信息和手机相关信息(MNC、MCC、LAC)进行定位,基站定位最大的优点就是:定位速度快,缺点就是:定位精度稍微较差,无网络信号不能使用。 
  3)基于wifi定位:
   和基站定位类似,根据当前设备获取的wifi信息来进行定位。
  可以从Androidmanifest.xml查看程序优先使用的定位方式:
  Android应用定位原理
  LocationManager是用于管理Android的用户定位服务,使用它来监听获取当前的位置信息并定义要返回的信息,如经纬度、方位等,相关代码如下:
  Android定位测试注意
  1)定位正确性;
  2)定位权限;
  3)不同网络环境下的定位;
  4)不同环境下的定位;
  5)本地测试外地定位;
  6)定位产生的耗电量评测;
  7)定位失败的处理情况。
  上面提到的泛灵犀问题中,小编就是漏掉了本地测试外地定位的情况,关于“本地测试外地定位”的测试方法如下:
  自定义位置提供器:
  1)准备一台root手机;
  2)下载“伪装定位”app并安装;
  3)安装完毕,打开手机设置→开发人员选项,开启允许虚拟位置;
  4)回到软件主界面,在地图上选择你要模拟的地方,点击“穿越到这里”
  模拟器模拟:
  使用模拟器进行测试的时候可以使用DDMS进行经纬度设置,如图:
  白盒方式:
  由于定位代码最终获取的是一个位置对象,只需要在获取到位置对象后手动设置经纬度即可。程序中使用的位置对象一般是android.location.Location对象,调用它的setLatitude和setLongitude方法就可以设置经纬度。
posted @   yanhuidj  阅读(1268)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2018-06-20 use . adb . get wifi
点击右上角即可分享
微信分享提示