永不关闭的定位后台服务
Posted
技术标签:
【中文标题】永不关闭的定位后台服务【英文标题】:Location Background Service that never closes 【发布时间】:2019-01-10 20:12:04 【问题描述】:我正在为我的公司(自己的公司设备)创建设备跟踪应用程序
我使用GooglePlay API
创建了一个后台服务来获取更新。
但是,当我的应用程序关闭时,它很少将位置发送到服务器。它很少获得更新更新。
我该怎么办?我可以使用任何特殊权限吗?
【问题讨论】:
【参考方案1】:为此目的使用WorkManager。即使您的应用程序正在被杀死,WorkManager 中计划的进程也会被执行。
在您的情况下,您可以安排以固定的时间间隔检查位置并将其发送到服务器或您要发送的任何地方。
来自官方文档:
WorkManager API 可以轻松指定可延迟的异步 任务以及它们应该何时运行。这些 API 让您可以创建任务并 将其交给 WorkManager 以立即或在适当的时候运行 时间。例如,一个应用程序可能需要从 不时上网。使用这些类,您可以设置一个 任务,选择合适的环境让它运行(比如“只有当 设备正在充电并在线”),并将其交给 WorkManager 运行 当条件满足时。 任务仍然保证运行,即使 如果您的应用被强制退出或设备重新启动。
您的任务将归入Recurring tasks
【讨论】:
以上是关于永不关闭的定位后台服务的主要内容,如果未能解决你的问题,请参考以下文章
当应用程序在iOS中使用后台定位服务时如何隐藏状态栏消息[关闭]
当我“关闭” UISwitch 时,后台位置服务跟踪不会停止
ios9定位服务的app进入后台三分钟收不到经纬度,应用被挂起问题及解决方式