货运APP如何尽可能精准的获取完整轨迹?

一、获取精准定位权限并上传服务端

上报轨迹的前提是APP要获取精准定位权限,否则一切为空。这一点比较明确,按照操作系统的开发文档直接去搞就好。


获取定位权限之后,APP需要每隔几秒钟就申请一次定位,并将定位结果上报服务端。其实到这里,只要APP始终保持在前台,那么服务端就能源源不断的获取轨迹点并绘制轨迹了。


但是很多时候用户是无法保证APP始终在前台并亮屏的。比如途中打开支付宝买个午餐、打开微信回个消息等。面对这种场景,我们有尽量保证APP在前台运行和后台定位两种互相补充的方案。

二、尽量保证APP在前台

用户为什么会保持APP在前台?最主要的原因是这个APP对用户有用。货运场景司机最核心的诉求之一是导航,那么接入导航能极大的提升司机使用APP的概率。同时导航时可以加一个小需求点,那就是导航期间APP常亮,不自动锁屏。


在导航的基础上可以用后台长时间无轨迹处罚、长时间无轨迹自动短信、电话通知司机等方式,主动让司机打开APP,从而获取轨迹。

三、后台定位

APP一但进入后台场景,那就存在APP虽然存活但被限制获取定位,或者APP直接被杀死无法获取定位的情况(常见于手机资源紧张、和电量原因需要把低优先级的进程杀死)。因此这两种场景要分别进行处理。

(一)获取后台定位权限

定位权限分为前台定位和后台定位权限,APP如果申请了并被授予了后台定位权限,那么只要APP还在后台活着就能获取定位。

(二)APP进入后台时启用可见进程

APP进入后台后可以启用一个可见进程以提升APP的优先级,这样被系统杀的概率会明显降低。下方是addroid官方对进程优先级的说明。

[进程和应用生命周期  |  Android Developers](https://developer.android.google.cn/guide/components/activities/process-lifecycle?hl=zh-cn)


可见进程示例:

(三)关闭省电优化

系统除了资源紧张会杀死后台APP之外,还会因为电量原因杀死APP。因此可以针对性的通过申请关闭省电优化来解决这一场景。

四、终极大杀器

如果APP已经被杀死了,技术上怎么搞?答案只有一个让用户开启APP自启动权限,一但开启此权限,APP通过接收各种广播消息来启动APP。但此权限开启比较麻烦,无法直接申请,需要用户自己去找到开关并打开。

发布时间:2024年12月4日 14:59
分类:产品经理
标签: 产品设计
作者:五行缺土
微信扫码接收最新分享: