从可行性、适配性角度给出以下方案。
基于局部性原理:我们在生活中会发现一些普遍规律,重复现象往往具有局部性。
比如,你跟一个人说话,你说了一句话以后,往往很快会重复一遍,但是你不会隔了5个小时又重复这句话,到处都是这种例子,比如你在编程的时候,你定义了一个变量int nCount,这个nCount一般你很快就会用到,不会离得很远。
由于我们的软件有GPS自动上报功能,且自动上报的时间不长,我们也可以认为当前的定位环境和最后一次自动上报的定位环境是相似的,那么能获取到GPS的耗时也是相似的,我们将最后一次定位上报的默认时间作为此次定位上报的默认时间。
查阅从相关资料得知,GPS定位耗时和手持机主板设置是多少通道的信号通道、以及所处的位置有关,也就是说与手机型号和当事人活动范围有关。所以依据上次定位环境获取的定位默认时间和本次定位需要的默认时间可以等同且适配性更好。
那么剩下来的问题是获取到一个默认与已存在的默认时间的选取问题。
1、在系统没有设置定位默认时间时,设定默认时间为30s。
2、设定定位耗时合理区间5-30s。
低于5s认为是热启动,丢弃值;超出30s认为是在室内,设置默认值为5s(为了缩短下次定位的等待时间);5-30s之间的值认为是在当前环境GPS定位耗时。
3、其他页面的定位耗时只读取配置文件的默认值。
PS:
原方案:统计各种型号的手机的定位耗时的平均时间,然后针对不同的手机给出不同的默认时间。
时间: 2024-11-03 21:27:37