【问题标题】:Location indicator persists on status bar after stopUpdatingLocation is called, but only for old Bundle Identifier调用 stopUpdatingLocation 后,位置指示符在状态栏上持续存在,但仅适用于旧的 Bundle Identifier
【发布时间】:2012-03-14 21:54:16
【问题描述】:

有谁知道为什么某些捆绑标识符与其他捆绑标识符的位置指示器保持不变? 我正在使用安装在运行版本 5.0.1 的 iOS 设备上的 Apple 示例 LocateMe 应用程序。当我使用旧的包标识符时,在调用 CLLocationManager stopUpdatingLocation 之后,位置指示器会停留在状态栏上。

但是,当我使用相同的应用程序时,唯一的区别是新的捆绑 ID,应用程序按预期工作,并且一旦调用 stopUpdatingLocation,位置指示器就会消失。

有没有人遇到过这个问题或者可以解释一下?

【问题讨论】:

  • 你有代码要发吗?
  • 您可以在 Apple Developer 网站上找到 LocateMe 示例应用程序。

标签: xcode ios5 cllocationmanager


【解决方案1】:

我终于想到,如果我从设置中重置位置警告,错误就会消失。

从您的 iOS 设置中选择常规 |重置 |重置位置警告。这会将警告重置为所有应用程序。这意味着下次您启动需要位置的应用程序时,iOS 将通过位置权限对话框提示您。 从操作表中选择“重置警告”。

再次运行应用程序时,iOS 将通过位置权限对话框提示您(如果没有 - 重复上述过程以重置位置警告)。选择“是”后,应用会按预期运行,并且位置指示器会在几秒钟后消失。

【讨论】:

  • iOS6 中仍然存在这个错误。感谢您的解决方案,它适用于 iOS5 和 iOS6。
  • 吉拉德,你先生是我的新英雄。我整天都在和这个该死的东西作斗争! @emrys57,我也可以确认这个错误在 iOS 6 中仍然存在...:/
  • 这很奇怪,但是在尝试了一切之后,重置警告也是我的解决方案,我正在使用 iOS 7.1 和 Xcode 5.1
【解决方案2】:

您是否也尝试过 stopMonitoringSignificantLocationChanges ?它对我有用。

【讨论】:

  • 是的,我确实尝试了 stopMonitoringSignificantLocationChanges,但它不起作用。不同的行为取决于 BundleId
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多