【发布时间】:2015-08-07 12:57:33
【问题描述】:
Hello Devs:我正在开发一个应用程序,我想在后台获取用户位置,并在用户到达该特定位置后立即向他发送推送通知。这是我到目前为止在我的应用程序委托中使用我的 locatioManager 所做的事情
locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
if (IS_OS_8_OR_LATER) [locationManager requestAlwaysAuthorization];
[locationManager startUpdatingLocation];
我已将 info.plist 设置为始终请求位置。当我在设备上安装应用程序时,我还会收到一条消息,即我的应用程序将在后台使用位置信息。但是,当我关闭应用程序并到达特定位置时,在启动应用程序之前我不会收到任何推送通知或警报。我打开了后台模式-> 功能部分下的位置更新,然后一切正常。我无需启动应用程序即可无缝接收通知。这一切都很好,但是当我关闭应用程序时,我在状态栏上看到一个蓝色条,表示我的应用程序正在后台跟踪位置。如何隐藏顶部的蓝色条?我很确定这会吓跑我的用户,他们会立即删除我的应用程序。长话短说,我该如何做到这一点?我知道这个问题在过去已经被问过并回答了好几次,但所有这些答案都是 2-3 岁,并且似乎不适用于新的 iOS 8。我需要在后台获取用户位置才能让我的应用程序工作,否则它没用。我将非常感谢对此的任何帮助或建议。 谢谢!
【问题讨论】:
标签: background ios8 location updates locationmanager