Android位置策略(二)
来源:互联网 发布:德国男生眼中美女知乎 编辑:程序博客网 时间:2024/05/16 17:35
申请用户权限
为了接收来自NETWORK_PROVIDER或GPS_PROVIDER的位置更新,你必须通过声明ACCESS_COARSE_LOCATION或ACCESS_FINE_LOCATION权限来分别的在你的Android清单中申请用户权限,如:
<manifest ... >
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
...
</manifest>
没有这些权限,你的应用程序会在请求位置更新时发生运行时错误。
注意:如果你同时使用了NETWORK_PROVIDER和GPS_PROVIDER,那么你只需要申请ACCESS_FINE_LOCATION权限,因为它包含这两个位置提供器的权限。(ACCESS_COARSE_LOCATION只包含了NETWORK_PROVIDER权限。)
定义最佳性能的模型
基于位置的应用程序目前是比较普遍的,但是由于精度不佳,需要使用多种方法来获取用户移动的位置,并且还希望能够达到省电的目的,因此获取用户位置是复杂的。要克服获取良好用户位置的障碍,同时保护电池的消耗,你就必须定义一个一致的模型来指定应用程序如何获取用户位置。这个模型包含了启动和停止监听更新的时机和使用被缓存的位置数据的时机。
获取用户位置的流程
以下是典型的获取用户位置的过程流程:
1. 启动应用程序;
2. 稍后,启动对期望的位置提供器的更新的监听;
3. 通过筛选新的位置,来维持一个当前最优的位置评估;
4. 停止对位置更新的监听;
5. 利用最后评估的最佳位置。
图1用一个可视的时间轴,演示了应用程序中所监听的位置更新,以及这些事件所发生的时机:
图1.代表应用程序中用于监听位置更新的窗口的时间轴。
这个窗口模型---在接收位置更新期间,你需要决定把基于位置的服务添加到你的应用程序中的时机。
- Android位置策略(二)
- Android位置策略(一)
- Android位置策略(三)
- Android位置策略(四)
- Android位置策略(五)
- Android位置策略
- Android应用程序的安装位置(二)
- Android应用程序的安装位置(二)
- Android之位置服务二
- (二)策略模式
- (二)策略模式
- (二)策略模式
- Android设计模式(二)--策略模式
- Android 使用基于位置的服务(二)
- android控制view的大小和位置(二)
- Android 基于位置的开发与百度地图 (二)
- Android Google Map学习二(接受位置更新信息)
- Android PopupWindow用法(二)_showAsDropDown 方法显示的位置
- Git跨平台中文乱码临时解决方案
- Git跨平台中文乱码临时解决方案
- k大子段和 二分答案 + 平衡树
- Hi3515支持NFS-ROOT启动
- Linux生产者与消费者的问题实现
- Android位置策略(二)
- 有关于一些常见的流用法
- 【第16天】“提问法”的话题展开法
- 单例模式
- linux gcc 编译时头文件和库文件搜索路径
- 黑马程序员之ASP.NET学习笔记:控件树的生成
- XML的一些基础
- C#泛型内部原理
- C#反射的理解