iBeacon: Jaka jest różnica między didEnterRegion i didDetermineState (CLRegionStateInside)
Chcę opublikować powiadomienie, gdy użytkownicy wejdą do regionu. Jednak jestem bardzo zdezorientowany z powodu tych samych dwóch metod CLLocationManagerDelegate. Jak właściwie używać tych dwóch metod?
Niektórzy twierdzą, że metoda „didDetermineState” jest potrzebna do rozpoczęcia obserwacji regionu, jeśli aplikacja uruchomi się w regionie.
Dzięki,
- (void)locationManager:(CLLocationManager *)manager
didEnterRegion:(CLRegion *)region
{
[self sendNotification:@"didEnterRegion"];
}
- (void)locationManager:(CLLocationManager *)manager
didDetermineState:(CLRegionState)state
forRegion:(CLRegion *)region
{
switch (state) {
case CLRegionStateInside:
[self sendNotification:@"didEnterRegion"];
break;
case CLRegionStateOutside:
break;
case CLRegionStateUnknown:
break;
default:
break;
}
}