北方云景
北方云景
  • 发布:2022-06-28 11:51
  • 更新:2023-05-26 14:34
  • 阅读:2072

关于安卓app后台运行 定时上传定位信息 需要如何解决?

分类:uni-app

APP业务场景:
1、APP的用户是司机,需要操作单子,运输中的单子,有‘’去导航‘’功能(打开三方导航app,如高德)
2、司机点了去导航之后,APP切到后台运行后,定时轮询(uni.getlocation)会在一段时间后不执行,无法上报位置信息(安卓端)

官方文档:
持续定位方案:Android如果进程被杀,代码无法执行。可以使用 unipush,通过服务器激活App,执行透传消息,让App启动然后采集位置。Android上,即使自己写原生插件做后台进程,也很容易被杀,unipush是更合适的方案

实际情况:
APP切到后台,推送的是厂商离线消息模式,看推送流程里,是不支持透传消息,需要用户去点击消息,激活APP。
在实际业务中,不可能让司机去点击消息唤起APP,然后上传定位

插件市场:
有一些定位、保活类的插件,目前试了几个,存在手机兼容性问题,高耗电提示

这个场景应该如何去实现?(困扰了快2个星期了,解决不了)

2022-06-28 11:51 负责人:无 分享
已邀请:
BoredApe

BoredApe - 有问题就会有答案。

如果用户自己杀掉进程。那就没办法了。 能做的就是后台持续定位和保活功能。iOS可以直接配置后台持续定位。Android本身是不支持后台模式的。或者说Android切换到后台是可以运行的。只是当前应用在系统后台的优先级比较低,当系统资源不足或者是省电模式时会自动回收后台应用。建议Android平台可以搜索uni原生插件中的保活插件来实现

北方云景

北方云景 (作者) - 工业互联云平台

如果能解决的,可以走商务洽谈

BigHornet

BigHornet

你好问下,贵司的功能后面实现了吗

要回复问题请先登录注册