chenscript
chenscript
  • 发布:2019-03-11 16:46
  • 更新:2019-03-14 12:22
  • 阅读:1981

【报Bug】android8.0后台不能执行 定位plus.geolocation.getCurrentPosition

分类:uni-app

plus.geolocation.getCurrentPosition

大概的需求是记录用户的轨迹,后台有个定时器监听位置,切到后台后定时器可以执行,但是不执行getCurrentPosition方法
测试Android6.0能够正常运行
8.0 切到后台后状态栏位置服务图标也跟着没了,
6.0 前后台都能正常定位


防止获取失败 当获取出错时再尝试低精度和高德定位
enableHighAccuracy:true,provider:'system',coordsType:'wgs84'->
enableHighAccuracy:false,provider:'system',coordsType:'wgs84'->
enableHighAccuracy:false,provider:'amap',coordsType:'gcj02'

2019-03-11 16:46 负责人:无 分享
已邀请:
chenscript

chenscript (作者)

demo

DCloud_App_Array

DCloud_App_Array

确定应用在前台运行时是否可获取位置信息?如果仅仅是切换到后台不可以,请查看设置中是否有允许应用后台运行的配置(请打开后台配置)。

  • chenscript (作者)

    已经允许应用后台运行,现在只有一个6.0的手机可以在后台持续获取位置,两个8.0 另外一个6.0 都不可以。另外论坛中还有很多人都有类似的问题,但是都没有答复和相关解决办法

    2019-03-14 13:22

  • DCloud_App_Array

    回复 chenscript:后台获取定位数据通常是被ROM禁止的,特别是Android高版本系统,对电源管理越来越严格,一般应用切换到后台就会停止运行。

    这种情况可以网上搜索下是不是存在原生的解决方案,可以尝试通过做uni原生插件的方法来解决。

    2019-03-14 15:28

该问题目前已经被锁定, 无法添加新回复