【问题标题】:Do not show location service icon in status bar but still use background updates不在状态栏中显示定位服务图标,但仍使用后台更新
【发布时间】:2016-09-22 19:36:49
【问题描述】:

我正在寻找一些解决方案来解决这个问题: 如果我使用locationManager.requestAlwaysAuthorization(),状态栏中会出现一个位置图标并且永远不会消失,所以,这就是问题所在 - 用户可以认为我的应用程序耗尽了电池,但事实并非如此。

所以,当我使用.requestWhenInUseAuthorization() 时,即使我添加了获取后台更新,我也无法调用didUpdateLocations 函数来更新位置,#selector 不允许调用该方法。

我希望我的应用在后台获取位置更新,而不总是在状态栏中显示位置图标。如何通过获取更新位置?

【问题讨论】:

    标签: ios swift xcode ios8 cllocationmanager


    【解决方案1】:

    所以,当我使用 .requestWhenInUseAuthorization() 时,我无法调用 didUpdateLocations 函数

    是的,你可以。如果您在更新位置时进入后台,您可以继续更新位置。你不能做的是开始从后台更新位置

    我希望我的应用在后台获取位置更新

    使用延迟位置更新或位置监控。这将使您对传感器的使用降至最低。否则,用户认为您在后台耗尽电池的印象是完全有道理的。

    【讨论】:

    • “位置监控”使用仅适用于 .requestAlwaysAuthorization() 的区域
    • 但是与您的应用关联的状态栏中没有显示位置图标,这就是您提出的问题。
    猜你喜欢
    • 2014-12-05
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 2013-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    相关资源
    最近更新 更多