大家好我又来了。ps:小伙伴的媳妇要生孩子了,所以之前的网站出现了问题,暂时在本平台发文。

本人是记录昨天尝试Android原生定位遇到的问题,因为如果出现错误,欢迎各位大佬来喷。

按照之前的开发,定位服务可以采用百度腾讯高德甚至是滴滴等第三方的服务,但是处于我们的业务考虑和约束,首选原生的定位。

还是要啰嗦一下,定位有GPS,AGPS ,wifi,和基站这几大种定位方式,优缺点就不做过度介绍了

首先是Gps定位,动态获取权限的话其实只需要:ACCESS_FINE_LOCATION这个权限就够了,但是如果用户在室内的话,讲真我在室内就没定位成功过。

后来我想这样可不行,就算GPS定位不到我可以通过网络定位呀(PS,公司网络直接就是翻墙的,不用担心国内网络影响)。

紧接着我就按照资料上的方式开始走网络定位,关闭了GPS,同时开启了ACCESS_FINE_LOCATION和ACCESS_COARSE_LOCATION权限,其中ACCESS_COARSE_LOCATION权限就是针对wifi和基站的定位权限,然后我就一脸蒙圈了,为什么!!!为什么!!凭什么我定位不到!!!

不要慌,问题不大,容我仔细看看咋回事,大家猜猜我发现了什么????

在关闭了GPS后,此时没有network的支持了,刺激不刺激!!!!!如果我打开GPS,此时list中包含的就有gps和network,说明此时这两个都是可用的。

所以这个:

网络节点其实是针对AGPS的节点,它是要依赖GPS才能实现的定位,也就是说AGPS是GPS和网络定位捆绑在一起的,此时的network访问的是AGPS的信号基站,网络节点并不可用!!!!!!!!!

所以想要单独获取网络定位咋办呢????当然传说可以使用谷歌的service sdk实现网络定位,但是滴滴也好,高德也好,万变不离其宗的是,都需要咱们主动的去请求后台基站数据库,根据ip定位后再把结果返回给客户端。

大家要是有兴趣可以尝试下。

预告:

接下来会出一系列针对Hybird混合开发的文章,针对WebView加载H5时候的各种需求各种兼容(我的1505行webView代码),例如:动态注入Js的三种方式,webView向前和向后加载不同的Js,怎么解决Java和Js在安卓4.几手机上的兼容崩溃和安全漏洞问题,调用支付,调用本地照片等需求,如何管理webView的栈,实现不同的栈走不同的逻辑,防止DNS污染!!!!最迅猛开发移动端H5页面的注意点和同时兼容iOS和Android!!!!!!!!

放大招了!!!!单独进程加载WebView页面,实现H5秒开!!!惊喜不惊喜,刺激不刺激?????!!!!!!

Android 最新原生定位折腾总结科普相关推荐

  1. 功耗大?定位精度差?如何优化Android原生定位

    近期华为开发者论坛收到一位小伙伴提问: 我的应用app需要调用GPS的位置服务,已经将应用所需要的所有权限全部打开,而且使用了wifi和4G网络,手机的耗电管理和联网管理等设置也全部为app开放,但使 ...

  2. Android原生定位实现方式

    Android原生定位实现方式 1.Appium+MuMu模拟器实现 2.uiautomatorviewer.bat+MuMu模拟器实现 3.weditor+MuMu模拟器实现 4.weditor+真 ...

  3. Android中获取定位经纬度信息

    场景 根据GPS获取经纬度效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实 ...

  4. Android 调用原生API获取地理位置和经纬度,判断所在国家

    public static boolean isCN(Context context) {TelephonyManager tm = (TelephonyManager) context.getSys ...

  5. 自动化无法定位的原因_Appium Android 自动化测试 -- 元素定位

    自动化测试元素定位是难点之一,编写脚本时会经常卡在元素定位这里,有时一个元素能捣鼓一天,到最后还是定位不到. Appium 定位方式和 selenium 一脉相承,selenium 中的定位方式App ...

  6. h5/web 原生定位、高德、腾讯地图定位

    在项目添加新功能时,使用cdn方式引入使用地图功能,使用功能只用到了地图的定位.点标记.详细地址查询.poi搜索和输入提示.计算两点之间的距离:因为在寻找高德地图问题时发现h5 和 web 端的好少, ...

  7. vue与安卓原生定位的交互

    网页定位的不足 我之前写了篇vue调用百度地图 js api实现定位的文章, vue 实现定位到当前位置 但是实际使用的时候,发现百度定位js经常定位不精确,这个不足,官网也有提, 为了精确,还是使用 ...

  8. 诺基亚6 android one,诺基亚安卓手机采用的是Android One原生系统:更纯净,更新快...

    1月28日消息 在为安卓手机提供系统更新这一点上,诺基亚的动作是比较快的.如今诺基亚安卓手机已有多款升级到了最新的安卓9 Pie系统,对此HMD CPO Juho Sarvikas在接受Android ...

  9. XamarinSQLite教程在Xamarin.Android项目中定位数据库文件

    XamarinSQLite教程在Xamarin.Android项目中定位数据库文件 实际开发中,经常需要验证数据库操作的正确性.这个时候,需要打开数据库文件,进行确认.下面是如何找到MyDocumen ...

  10. Android开发--用户定位服务--UserLocation

    用户定位介绍: User Location的作用: 1.获取用户的位置 2.追踪用户的移动 User Location的关键API 1.Location Manager:用于管理Android的用户定 ...

最新文章

  1. 一文吃透JAVA定时器格式
  2. php 全局搜索方法,php启用sphinx全文搜索的方法
  3. Linux下利用rsync实现多服务器文件同步
  4. android 4个布局,Android - 4种基本布局
  5. 写出好代码系列 工程思维
  6. nginx的反向代理和负载均衡的区别
  7. Erlang --- gen_server
  8. 50个常用的sql语句
  9. [Linux/Unix]常用命令
  10. calabash android教程,Calabash Android 使用教程 (二)
  11. CMU 15-213 Introduction to Computer Systems学习笔记(6) Machine-Level Programming-Procedures
  12. 机器学习和深度学习资料列表
  13. vue 导出excel文件
  14. 在Word中为三位数字设置带圈字符(转)
  15. vlan和静态路由配置实验
  16. Linux下opendir、readdir使用小结
  17. 计算机网络七层结构与功能,网络七层结构介绍
  18. python实现商品进销存管理系统
  19. WKWebView加载txt文档乱码
  20. JetPack之Room,Room基本使用

热门文章

  1. AI公开课丨钱铁云:面向复杂和低资源环境的方面级情感分析
  2. HTML5移动开发即学即用(双色)
  3. Django项目实践1 - 创建Django项目
  4. e4a生成r.java错误,编译时候出现英文错误
  5. java分布式集群框架_Cacheonix——Java的分布式集群缓存框架
  6. vue中 点击二维码刷新图片(src不变)
  7. 1010 一元多项式求导 (25 分)—PAT (Basic Level) Practice (中文)
  8. ubuntu18.04设置开机自启动的脚本
  9. git如何撤销已经push到远程仓库的代码提交
  10. jQuery~函数封装记1