即使应用程序被杀,如何继续进行iOS位置跟踪?

时间:2018-01-26 17:03:23

标签: ios apple-push-notifications core-location

在以下条件到位时,我尝试启用持续的位置跟踪时遇到问题:

  • 禁用后台提取
  • App被杀

发生上述情况时,会停止位置更新。我试图让我的服务器发送推送通知来唤醒应用程序,但如果应用程序被杀,它们就不会到达。

令人费解的是,类似的功能似乎在WhatsApp(the live location)上运行得很好。在WhatsApp上,即使我禁用后台获取并终止应用程序,它也会设法再次将其唤醒以发送更新的位置信息。

有没有人知道他们在做什么?

2 个答案:

答案 0 :(得分:1)

似乎WhatsApp可以使用PushKit来解决这个问题。根据{{​​3}}:

  

WhatsApp可以使用VOIP后台模式和PushKit for   解决这个问题。

     

Voip推动是:

     
      
  • 直接发送到应用。
  •   
  • 被视为高优先级通知,并且毫不拖延地发送。
  •   
  • 即使应用程序被用户强制退出也会提供。
  •   

我还创建了一个快速示例应用程序来尝试这个,它就像一个魅力。然而,再次根据链接的问题,Apple并没有真正允许这个解决方案:

  

Apple不再允许将API用于非VOIP应用的推送通知。然而,他们允许WhatsApp以无限公平的方式做到这一点。

答案 1 :(得分:0)

使用significant-change location服务。它甚至会终止应用程序。