iOS Features – Enable or Disable Zone
Disabling specific Zones at runtime
An app may optionally disable (and later re-enable) Zone which it receives from Canvas.
setZone:disableByApplication: on the shared instance of BDLocationManager, a Zone can be disabled and re-enabled by an app. Note that this will not over-ride any excluding conditions entered via the Canvas web interface.
As an example; if you define a Zone in Canvas as active between 1 pm and 3 pm, calls to
setZone:disableByApplication: would have no apparent effect outside these times. During the Zone’s active period (e.g. at 2.30 pm), the Zone will be active unless disabled by
The enable and disable Zone methods return YES if a valid Zone Id has been provided.
Retrieve the shared instance of BDLocationManager to call the following methods:
- (void)setZone: (NSString *)zoneId disableByApplication:(BOOL)disable - (BOOL)isZoneDisabledByApplication: (NSString *)zoneId
- (void)didUpdateZoneInfo: (NSSet *)zoneInfos
Zone information will first be updated immediately after successful authentication and again whenever:
- Your app’s rule download interval has passed.
- Significant distance has been covered (the actual distance depends upon the number of Geofences in your application).
zoneInfos parameter contains a set of all available Zone and their associated Ids, names, descriptions and Geofences.
Point SDK reference documentation can be accessed here.
Interaction with the Check Out feature
Note that if a Zone has already ‘Checked In’ and is awaiting a ‘Check Out’ event, then disabling the Zone at this point will not prevent the check out callback from occurring.
If it is important to suppress Check Out behaviours while a Zone is disabled by your application, we advise that you make use of the
isZoneDisabledByApplication: method as part of your Check Out callback.