【问题标题】:Update Location when app is terminated应用程序终止时更新位置
【发布时间】:2018-04-05 19:29:46
【问题描述】:

我正在开发一个应用程序,它使用用户的位置向他发送匹配的用户,即使该应用程序被终止或从 iOS 中正在运行的应用程序中刷出。 如果他从当前位置移动 50 英尺,我有什么方法可以调用 api 来上传用户的当前位置? 我已经读过,如果应用程序处于后台或终止状态,苹果不允许执行代码。因此,请建议我应该做什么以及应该如何逐步完成,这样我才能完成这项任务,这肯定会对我的许多应用程序有所帮​​助。

【问题讨论】:

    标签: ios swift location core-location cllocationmanager


    【解决方案1】:

    总之,没有。您可以订阅重要的位置更改通知。然后,当系统检测到用户移动了“相当大的距离”(由系统定义)时。我不确定系统称之为显着的位置变化,但它会远远超过 50 英尺。

    另一种选择是在用户当前位置周围创建地理围栏,并使用核心位置startMonitoring(for:) 函数监听位置更新。

    如果这两种技术检测到相关事件并且您的应用没有运行,它们都会重新启动您的应用。

    【讨论】:

    • 我不能每分钟向服务器发送位置信息吗?
    • 除非设备处于唤醒状态并且您的应用处于前台,或者您的应用是逐向导航应用,否则不会。 (Apple 严格限制允许从后台持续运行的应用程序,以节省用户的电池电量。)
    • 那么有没有其他方法可以达到如上所述的预期结果?你能根据你的经验提出一些建议吗?那太好了。
    • 没有。你不能这样做。没有。
    • @DuncanC 根据这篇博客文章,有一种方法可以做到:mobileoop.com/… 还没有机会尝试代码,因为我是 Swift 开发人员,我必须弄清楚如何从 Obj-C 切换它,但我将在下周开始使用它
    猜你喜欢
    • 2014-09-06
    • 1970-01-01
    • 2016-04-07
    • 2017-07-30
    • 2023-03-11
    • 1970-01-01
    • 2016-04-04
    • 2015-05-01
    相关资源
    最近更新 更多