我正在研究一个应用程序,当他靠近使用区域监视的某些地标时提醒用户。一切正常,但当应用程序在后台我没有得到警报。当我打开应用程序时,我会弹出所有警报。我想要的是在应用程序处于后台时获取它们。我想知道是否有可能或应用程序需要运行才能获取警报?任何帮助将不胜感激。IOS Geofencing后台警报
更新: 问题似乎是我用警报而不是本地通知。以下是我使用的代码:
- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region {
NSLog(@"Entered Region - %@", region.identifier);
[self showRegionAlert:@"You are near: " forRegion:region.identifier];
}
如何将此更改为本地通知?
在你的'Info.plist',你声明'location'为你的'UIBackgroundModes'? – yeesterbunny 2013-02-24 22:14:36
其实我这样做,这是为什么我认为它仍然可以跟踪位置变化,以便当我运行应用程序时,我得到所有警报弹出一个接一个后,我只是不会弹出时,应用程序运行在后台 – XpApp 2013-02-24 22:34:48
时你说你'没有得到警报',你的意思是你在地标到达时产生UIAlertViews?这将无法正常工作,因为您无法在后台显示警报。你应该使用UILocalNotifications如果你还没有 – 2013-02-25 00:15:48