【问题标题】:Application doesn't launch with location key after a significant location change重大位置更改后应用程序无法使用位置键启动
【发布时间】:2013-08-15 06:01:20
【问题描述】:

在应用程序通过 CLLocationManager 类中的 startMonitoringSignificantLocationChanges 方法终止后,我的应用程序也会使用核心位置。

我的应用程序在 iOS 5 和 6 的方法中使用位置键启动: - (BOOL) 应用程序:应用程序 didFinishLaunchingWithOptions:launchOptions; 在 AppDelegate 类中,一切正常。

但在 iOS-7 测试版中,应用程序在位置发生重大变化后不会使用位置键启动。

有人遇到过这个问题吗?

我在模拟器和设备上都试过了。

感谢您的帮助。

【问题讨论】:

    标签: iphone objective-c background cllocationmanager ios7


    【解决方案1】:

    当应用程序被用户从应用程序切换器终止时,我的应用程序也遇到了同样的问题。 但如果它因内存不足或其他原因被操作系统终止,它会使用位置键启动。

    不幸的是,这是 iOS7 的预期结果。我从他们的一位布道者那里得到的苹果官方回复:

    如果用户在应用切换器中向上滑动,则操作系统将不会启动 该应用程序,除非用户明确告知这样做。所以不,SLC 会 不会启动应用程序,也不会静默通知。唯一的 此时将启动应用程序的是用户点击 图标。这里的意图是用户已经表达了他们的选择 出于任何原因不再运行该应用程序,因此我们很荣幸 那。在这种情况下,你真的无能为力。这 下次用户启动应用程序时,您可以让他们知道其中一些 数据可能会丢失,尽管你真的无法判断是否 是否缺少数据(即您可能已被操作系统杀死 在后台,用户可能没有移动,因此没有 触发任何 SLC 通知)。我的建议是收集 您可以在操作系统的策略中获取的数据以及用户是否拥有 手动杀死该应用程序然后尊重该愿望并且不做任何事情。 无论如何,如果发生这种变化,请随时提交错误报告 行为最终会给您带来问题或(尤其是)混乱 为您的用户。

    附上 Apple DEV 论坛的链接: https://devforums.apple.com/message/882691#882691

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-06
      • 1970-01-01
      • 1970-01-01
      • 2014-10-22
      • 2018-07-13
      • 2012-02-03
      • 1970-01-01
      相关资源
      最近更新 更多