我使用startMonitoringForRegion
监视特定区域。 当App未运行余当用户输入由比较/离开特定位置已成功地产生的本地通知[launchOptions objectForKey:@"UIApplicationLaunchOptionsLocationKey"]
在AppDelegate中。
但现在我不能够理解我怎么能知道用户的位置进入或离开的位置。 我无法找到一个方法来检查响应。 我可以在警示身体的反应如何? 我搜索在互联网,但无法找到已在AppDelegate中写了一些代码的任何教程。
您可以使用位置管理的委托方法
- (void)locationManager:(CLLocationManager *)manager didDetermineState:(CLRegionState)state forRegion:(CLRegion *)region{
if (state == CLRegionStateInside) {
// We entered a region
NSLog(@"Inside region");
if([[UIApplication sharedApplication] applicationState] == UIApplicationStateBackground){
UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.alertBody = @"Region Detected";
notification.soundName = @"Default";
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];
} else if (state == CLRegionStateOutside) {
// We are outside region
NSLog(@"Outside region");
}
}
IN的appdelegate
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
[[NSNotificationCenter defaultCenter] postNotificationName:@"PerformAction" object:nil userInfo:nil];
}
在你的视图控制器viewDidLoad方法:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(performAction) name:@"PerformAction" object:nil];
在您的同一的viewController添加下面的方法和执行行动乌尔
-(void)performAction
{
// perform your action
}