当应用程序被终止/终止/暂停时,cordova 获取 iOS 7 和 8 的位置更新

Posted

技术标签:

【中文标题】当应用程序被终止/终止/暂停时,cordova 获取 iOS 7 和 8 的位置更新【英文标题】:cordova getting Location Updates for iOS 7 and 8 when the App is Killed/Terminated/Suspended 【发布时间】:2015-10-08 22:31:10 【问题描述】:

我正在开发一个 Cordova 应用程序,即使设备处于睡眠模式,它也需要获取位置更新并将其发送到服务器。如果应用程序在前台,我现在可以使用我的版本跟踪设备的位置。但是在 10-15 分钟后,应用程序被操作系统杀死,在用户再次启动我的应用程序之前,我不再获得任何位置更新。

在寻找解决这个问题的方法时,我发现了这篇文章:

http://mobileoop.com/getting-location-updates-for-ios-7-and-8-when-the-app-is-killedterminatedsuspended

它显示了即使应用程序被终止,如何获取位置更新。主要问题是我不确定这是否可以与未越狱的iOS一起使用,而且我以前从未自己编写过cordova插件。

那么是否可以跟踪位置并通过 socket.io 或 http 将其发送到特定服务器?

或者至少在我的应用启动时发送的文件中写入这些地理位置更新?

如果我的第一个问题的答案是肯定的:插件应该是什么样子?

【问题讨论】:

【参考方案1】:

@Kingalione, 您可以防止应用程序被杀死。 Apple 的文档中存在文档错误。这是我的博客文章:

轻微的文档错误会导致后台操作问题http://codesnippets.altervista.org/blog/2015/BLOG.2015-07-02.jssnippets.html

要应用此修复程序,您需要将其添加到您的 .plist 文件中。不幸的是,我不知道如何为 Cordova CLI 执行此操作。这是你need for UIBackgroundModes的部分

【讨论】:

你能告诉我当应用程序在cordova iOS插件中终止时如何获取位置更新吗?我知道如何在 iOS 应用程序中做到这一点,但是当我在 phoneGap 中使用插件时它不起作用。 @jesseMonoroy650 我不再回答 phoneGap 的问题。请使用 adobe 的支持论坛。

以上是关于当应用程序被终止/终止/暂停时,cordova 获取 iOS 7 和 8 的位置更新的主要内容,如果未能解决你的问题,请参考以下文章

即使应用程序被杀死/终止,位置更新

iOS后台执行和防止应用程序被暂停/终止

当 iOS 应用程序被暂停/杀死并且用户点击通知时如何处理 Firebase 推送通知?

Unity:如何暂停执行直到函数终止,以便不跳过任何帧

当应用程序被终止状态时,点击推送通知后无法导航到 ViewController

当应用程序进程被终止时,请勿打开上一个活动