google geofence geolocation geocoding geofencing

geolocation - geofence - Notificación local basada en la región



google api key geolocation (1)

Actualmente estoy trabajando con el código de muestra "Regions": https://developer.apple.com/library/ios/#samplecode/Regions/Introduction/Intro.h tml # // apple_ref / doc / uid / DTS40010726-Intro-DontLinkElementID_2

Me gustaría dar un paso más y generar, o activar, una notificación cuando el usuario sale de la región (puede ser tanto para ingresar como para salir, no me importa, lo que sea más fácil para una implementación inicial).

He estado consultando la referencia de CLLocation Class, la guía de programación de reconocimiento de ubicación y la guía de programación local y de notificación push. Y estoy sufriendo de sobrecarga de información.

Muchas gracias :)

EDITAR: Creo que puedo tener una idea que resuelve el problema: en el archivo de implementación RegionsViewController hay esto:

- (void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region { NSString *event = [NSString stringWithFormat:@"didExitRegion %@ at %@", region.identifier, [NSDate date]]; [self updateWithEvent:event]; }

Como quiero implementar una notificación local cuando el usuario sale del límite de la región designada, he introducido esto:

- (void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region { NSString *event = [NSString stringWithFormat:@"didExitRegion %@ at %@", region.identifier, [NSDate date]]; [self updateWithEvent:event]; //implement local notification: UIApplication *app = [UIApplication sharedApplication]; UILocalNotification *notification = [[UILocalNotification alloc] init]; [[UIApplication sharedApplication] cancelAllLocalNotifications]; if (notification == nil) return; notification.alertBody = [NSString stringWithFormat:@"Did You Lock Your House?"]; notification.alertAction = @"Lock House"; notification.soundName = UILocalNotificationDefaultSoundName; notification.applicationIconBadgeNumber = 1; [app presentLocalNotificationNow:notification]; [notification release]; }

¿Alguien podría aconsejarme si esto es correcto o si hay alguna recomendación? (disculpas por el pobre formato)


está en lo correcto, no hay mejor manera que enviar una notificación local desde locationManager: didExitRegion: Además, esto funcionará incluso si su aplicación se ejecuta en segundo plano o cerrada.