【问题标题】:iOS 9 - Location background updates only happening on second push to backgroundiOS 9 - 位置背景更新仅在第二次推送到后台时发生
【发布时间】:2015-12-13 23:23:16
【问题描述】:

在 iOS9 中,当应用程序进入后台时(设置了所有适当的标志等用于后台处理,包括新的 allowBackgroundLocationUpdates 属性),位置管理器报告更新 10 秒然后休眠。将应用程序带回前台并再次返回后台后,更新会按预期持续运行。

这仅在 iOS9(非测试版)中发生,而不是在 iOS7 或 iOS8 中。

还有其他人遇到过这种行为吗?

【问题讨论】:

  • 我也注意到了。只有设置pausesLocationUpdatesAutomatically = false 似乎可以解决它。不幸的是,这会带来电池使用损失
  • 感谢您的回复;此标志已设置为 false,问题仍然存在。

标签: background cllocationmanager ios9


【解决方案1】:

设置,allowBackgroundLocationUpdates,被记录为能够控制后台处理的运行时设置;但是,标志不能设置在:

applicationDidEnterBackground:

如果标志因为无法在此方法中使用而持续失败;那么它会更容易追踪,但它仅在第一次进入后台时失败。

这意味着在以下位置重置标志存在问题:

applicationWillEnterForeground:

结果是无法在方法生命周期中设置标志;因此,该标志通常在应用程序初始化时设置,这意味着该标志就目前而言并不是特别有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-26
    • 2018-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多