社交app后台未退出位置会实时更新,因为没退出来就会实时更新当时的位置。
1. 如果用户的位置在持续变化 则隔一段时间上报一次
由于我们希望能够实时的将用户的位置变化反馈在APP里 所以定时的上报是刚需
2. 如果用户的移动速度很慢 则隔一段距离上报一次
如果用户是低速率的状态(比如步行的移动速度大概就是1m/s左右) 这个时候如果还按(1)中的方式来上报的话 由于变化太小 地图上的点会非常的密集 这种数据的意义不大(而且如果要做轨迹服务的话 这些密集点都是必须有花掉的) 所以这时候我们按照距离间隔来上报
3. 如果用户的位置在到达某处后没有变化 则不继续上报
我们只关心位置的变化 如果用户的位置没有变化或者变化很小 其实是不需要上报其位置的(比如进入的公司 或者等一个很长时间的红灯) 这时候我们就不上报(以达到省电的目的)
4. 切换到后台也要能定位上报
后台上报是必须的 用户不可能一直运行着我们的APP (iOS4开始就支持了)
5. APP因各种原因终止运行后(用户主动关闭, 系统杀掉) 也要能定位上报
用户主动关闭APP的几率不大 但是因系统调度被杀掉的情况是很普遍的 这个时候我们也要能够上报 (iOS7开始已支持被杀掉后唤醒)
温馨提示:答案为网友推荐,仅供参考