Android地理位置获取的那些坑
来源:互联网 发布:中科院下属企业知乎 编辑:程序博客网 时间:2024/06/07 08:22
我算是搞明白了,无论是Framework还是Application,只要跟硬件相关的东西都有各种坑的存在。
所幸,也正是这些坑的存在,让这个行业形成了一道道门槛。 嗯,是这样的
坑在最后面
Android地理位置获取最佳实践
国外有Google Service的App
如果你遇到的正好是这种App,那你太荣幸了,google service的play-service-location lib正好解决你的问题,并且用起来超级简单,目前11.0.1版本包含你需要的类,10.0.1是不包含的。
使用方法: https://developer.android.com/training/location/retrieve-current.html
墙内的App
百度地图或高德地图的SDK
用过百度地图的都知道,它获取Location的方式非常简单,并且还有现成完善的Demo可以用。百度网络定位据说采用的是IP和基站,我们没那么多时间自己去搞这些玩意。
监听位置的更新
这里推荐一个完整的App https://github.com/obaro/SimpleLocationApp
注意,需要在AndroidManifest.xml里面添加上INTERNET权限
坑
以为获取位置信息就能获取到
通过LocationManager 的方法getLastKnownLocation(String provider),直接获取的就是null
以为更新下位置就能获取到最新的位置
requestLocationUpdates调用后就能从listener获取到位置更新么,
想多了,得等一会。当然,如果你不是在操场办公,是在几十层楼信号娇弱的地方办公,那就等上半格小时到一个小时吧。当然在地铁上更不要指望能获取到位置更新。我还特地打印了位置更新的时间点,证明了我吃顿饭后才能收到位置更新。GPS指望不上,同时手机网络位置更新太慢,Nexus也是这样。
如果室外需要GPS定位怎么办
你只能通过启动Activity启动到设置定位服务开启的界面,是否开启GPS还需要提醒用户到里面设置。如下进入系统定位服务设置。
Intent myIntent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);startActivity(myIntent);
- Android地理位置获取的那些坑
- 获取Android地理位置的方法
- 基于短信的android地理位置获取
- Android 获取地理位置的经度和纬度
- 基于百度地图的android地理位置获取
- Android 获取地理位置的经度和纬度
- Android 获取地理位置的经度和纬度
- Android GPS获取地理位置
- android获取地理位置信息
- 获取IP的地理位置
- Android GPS获取地理位置代码
- Android通过基站获取地理位置
- Android中获取地理位置经纬度
- Android 自带 获取地理位置的经度和纬度
- js获取地理位置的经纬度
- 获取用户的地理位置接口
- Android 通过经纬度获取地理位置信息
- Android 使用GPS获取当前地理位置
- 重新认识HTML系列005——内容模型
- javascript继承(二)借用构造函数的方式继承(类继承)
- java7 计算日期相隔天数的最优方法
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.4基本类型与运算(4.4.5-4.4.10)
- timer事件执行
- Android地理位置获取的那些坑
- Learning-Based View Synthesis for Light Field Cameras
- 经典sql练习题
- hibernate中的对象有三种状态: 瞬时状态 (Transient),持久状态 (Persistent),
- Java设计模式详解之一单例模式
- 过网络验证的案例2017-0619
- 剑指offer——二叉搜索树与双向链表(好题)
- 算法竞赛知识提要2
- VC获取硬件信息