BDPLocationDelegate
Deprecated
First deprecated in 15.4.0. Please refer to each deprecated methods for more information
@protocol BDPLocationDelegate <NSObject>
Defines the call-backs which Point SDK makes to inform the Application of location-related events.
Assign your own implementation of this protocol to the @ref BDLocationManager#locationDelegate “locationDelegate” property of the
shared BDLocationManager
instance, to handle location related callbacks.
Callbacks inform the application when:
- …new Zones have been received from Canvas
- …the user has triggered a Custom Notification action
-
Deprecated
First deprecated in 15.4.0 - Features migrated to
-[BDPGeoTriggeringEventDelegate onZoneInfoUpdate:]
methodCalled whenever new
BDZoneInfo
“zone info” is received from Canvas.This occurs immediately after the Point SDK successfully authenticates, and repeats when the rule download time interval is reached or significant distance has been travelled.
This is a value that you set when creating the Application in the Canvas web-interface, and determines how often the Zone data will be refreshed on the device.
Declaration
Objective-C
- (void)didUpdateZoneInfo:(NSSet *)zoneInfos;
Parameters
zoneInfos
A collection of
BDZoneInfo
objects, corresponding to the Zones you created for this application, in the Canvas web-interface. -
Deprecated
First deprecated in 15.4.0 - Feature migrated to
-[BDPGeoTriggeringEventDelegate didEnterZone:]
Implement this method to provide your own Custom Action when a Zone is triggered by entering a Fence.
This method and
-[BDPLocationDelegate didCheckIntoBeacon:inZone:atLocation:withProximity:willCheckOut:withCustomData:]
are both optional.
Implement them according to whether you have Custom Actions in your geo-location scenario, and whether those actions may be triggered by entering Fences, Beacon proximities, or both.For clarity: When a user’s device checks into a
BDZoneInfo
“Zone”, this method is called only if Custom Action is chosen as one of theBDZoneInfo
“Zone”‘s Actions in the Canvas web-interface.Declaration
Objective-C
- (void)didCheckIntoFence:(BDFenceInfo *)fence inZone:(BDZoneInfo *)zoneInfo atLocation:(BDLocationInfo *)location willCheckOut:(BOOL)willCheckOut withCustomData:(NSDictionary *)customData;
Parameters
fence
The fence that the user entered in order to trigger this custom action.
zoneInfo
The zone containing the entered fence.
location
The location relevant information of the device when the custom action was triggered.
willCheckOut
Whether a subsequent Check Out callback is expected when the device moves a significant distance away from the Fence.
customData
The custom fields setup from “Dashboard” in the Canvas web-interface.
-
Deprecated
First deprecated in 1.9.4 - Feature migrated to
-[BDPGeoTriggeringEventDelegate didEnterZone:]
This method has been deprecated as of version 1.9.4; it will be removed in a future version.
Declaration
Objective-C
- (void)didCheckIntoFence:(BDFenceInfo *)fence inZone:(BDZoneInfo *)zoneInfo atCoordinate:(BDLocationCoordinate2D)coordinate onDate:(NSDate *)date willCheckOut:(BOOL)willCheckOut withCustomData:(NSDictionary *)customData;
-
Deprecated
First deprecated in 15.4.0 - Feature migrated to
-[BDPGeoTriggeringEventDelegate didExitZone:]
Implement this method to provide your own Custom Action when checking out of fence.
This method and
-[BDPLocationDelegate didCheckOutFromBeacon:inZone:withProximity:onDate:withDuration:withCustomData:]
are both optional. Implement them according to whether you have a fence that has been configured with Check Out set.Declaration
Objective-C
- (void)didCheckOutFromFence:(BDFenceInfo *)fence inZone:(BDZoneInfo *)zoneInfo onDate:(NSDate *)date withDuration:(NSUInteger)checkedInDuration withCustomData:(NSDictionary *)customData;
Parameters
fence
The fence that the user checked out of in order to trigger this custom action.
zoneInfo
The zone containing the entered fence.
date
The date and time when the custom action was triggered.
checkedInDuration
The dwell time minutes of the device within a fence.
customData
The custom fields setup from “Dashboard” in the Canvas web-interface.
-
Deprecated
First deprecated in 15.4.0 - It will be removed in a future version
Implement this method to provide your own Custom Action when a Zone is triggered by entering the configured proximity of a Beacon.
This configuration can be made in the Management section of each Zone in the Canvas web-interface.
This method and
-[BDPLocationDelegate didCheckIntoFence:inZone:atLocation:willCheckOut:withCustomData:]
are both optional. Implement them according to whether you have Custom Actions in your geo-location scenario, and whether those actions may be triggered by entering Fences, Beacon proximities or both.For clarity: When a user’s device checks into a
BDZoneInfo
“Zone”, this method is called only if Custom Action is chosen as one of theBDZoneInfo
“Zone”‘s Actions in the Canvas web-interface.Declaration
Objective-C
- (void)didCheckIntoBeacon:(BDBeaconInfo *)beacon inZone:(BDZoneInfo *)zoneInfo atLocation:(BDLocationInfo *)locationInfo withProximity:(CLProximity)proximity willCheckOut:(BOOL)willCheckOut withCustomData:(NSDictionary *)customData;
Parameters
beacon
The beacon that the user entered the required proximity of, in order to trigger this custom action.
zoneInfo
The zone containing the beacon in proximity.
locationInfo
The location of beacon when the custom action was triggered.
proximity
The proximity of the beacon when the custom action was triggered.
willCheckOut
Whether a subsequent Check Out callback is expected when the device moves outside of the Beacon’s range.
customData
The custom fields setup from “Dashboard” in the Canvas web-interface.
-
Deprecated
First deprecated in 1.9.4 - It will be removed in a future version
Undocumented
Declaration
Objective-C
- (void)didCheckIntoBeacon: (BDBeaconInfo *)beacon inZone: (BDZoneInfo *)zoneInfo withProximity: (CLProximity)proximity onDate: (NSDate *)date willCheckOut: (BOOL)willCheckOut withCustomData: (NSDictionary *)customData __attribute__((deprecated("First deprecated in 1.9.4 - It will be removed in a future version")));
-
Deprecated
First deprecated in 15.4.0 - It will be removed in a future version
Implement this method to provide your own Custom Action when checking out of beacon.
This method and
-[BDPLocationDelegate didCheckOutFromFence:inZone:onDate:withDuration:withCustomData:]
are both optional. Implement them according to whether you have a beacon that has been configured with Check Out set.Declaration
Objective-C
- (void)didCheckOutFromBeacon:(BDBeaconInfo *)beacon inZone:(BDZoneInfo *)zoneInfo withProximity:(CLProximity)proximity onDate:(NSDate *)date withDuration:(NSUInteger)checkedInDuration withCustomData:(NSDictionary *)customData;
Parameters
beacon
The beacon that the user checked out of in order to trigger this custom action.
zoneInfo
The zone containing the entered fence.
proximity
The proximity of the beacon when the check-in was triggered.
date
The date and time when the custom action was triggered.
checkedInDuration
The dwell time minutes of the device within the range of a beacon.
customData
The custom fields setup from “Dashboard” in the Canvas web-interface.
-
Deprecated
First deprecated in 15.4.0 - It will be removed in a future version
These methods can be implemented to monitor whether the Bluetooth capabilities of the device are in a valid state when utilising the SDK’s beacon functionality.
If the configured location of a beacon is near the device, then
-[BDPLocationDelegate didStartRequiringUserInterventionForBluetooth]
will be called.From the version 15.0.0 the SDK does not maintain Bluetooth enablement state. The boolean
isBluetoothEnabled
is removed from the SDK.Since then, it is an app responsibility to check the Bluetooth state and require user interraction in the most appropriate way.
Thereafter, if the device leaves proximity of the beacon, then `-[BDPLocationDelegate didStopRequiringUserInterventionForBluetooth is called.
Declaration
Objective-C
- (void)didStartRequiringUserInterventionForBluetooth;
-
Deprecated
First deprecated in 15.4.0 - It will be removed in a future version
To preserve the energy and minimise the battery impact, it is recommended to turn off Bluetooth if the application is not using it.
However, there might be other apps or peripheral using the Bluetooth. Thus the user decides whenever to keep it enabled or disabled.
Please refer to
-[BDPLocationDelegate didStartRequiringUserInterventionForBluetooth]
.Declaration
Objective-C
- (void)didStopRequiringUserInterventionForBluetooth;
-
Deprecated
First deprecated in 15.4.0 - Feature replaced by
-[BDPBluedotServiceDelegate locationAuthorizationDidChangeFromPreviousStatus:toNewStatus:]
These methods can be implemented to monitor whether iOS Location Services are in a valid state while the SDK is authenticated with Canvas.
If Point SDK is authenticated with Canvas and Location Services have not been enabled or set to “Never” or “While Using” then
didStartRequiringUserInterventionForLocationServicesAuthorizationStatus:
will be called.Thereafter, if Location Services have been set to “Always Allow”, or if Point SDK logs out from the authenticated state, then
-[BDPLocationDelegate didStopRequiringUserInterventionForLocationServicesAuthorizationStatus:]
is called.If Location Services are both required and enabled, then these callbacks will not be invoked.
Declaration
Objective-C
- (void)didStartRequiringUserInterventionForLocationServicesAuthorizationStatus: (CLAuthorizationStatus)authorizationStatus;
Parameters
authorizationStatus
The current authorization status of the calling application.
-
Deprecated
First deprecated in 15.4.0 - Feature replaced by
-[BDPBluedotServiceDelegate locationAuthorizationDidChangeFromPreviousStatus:toNewStatus:]
Please refer to
-[BDPLocationDelegate didStartRequiringUserInterventionForLocationServicesAuthorizationStatus:]
.Declaration
Objective-C
- (void)didStopRequiringUserInterventionForLocationServicesAuthorizationStatus: (CLAuthorizationStatus)authorizationStatus;
-
Deprecated
First deprecated in 15.4.0 - Feature replaced by
-[BDPBluedotServiceDelegate lowPowerModeDidChange:]
These methods can be implemented to monitor whether the iOS ‘Low Power Mode’ has been enabled while the SDK is authenticated with Canvas.
The callback is required because Low Power mode negatively impacts the timeliness and precision of Point SDK, which your Application may need to communicate to the user.
If Point SDK is authenticated with Canvas and iOS has been switched to ‘Low Power mode’, then
didStartRequiringUserInterventionForPowerMode
will be called.Thereafter, if the user switches off ‘Low Power mode’, then
-[BDPLocationDelegate didStopRequiringUserInterventionForPowerMode]
is called.Declaration
Objective-C
- (void)didStartRequiringUserInterventionForPowerMode;
-
Deprecated
First deprecated in 15.4.0 - Feature replaced by
-[BDPBluedotServiceDelegate lowPowerModeDidChange:]
Please refer to
-[BDPLocationDelegate didStartRequiringUserInterventionForPowerMode]
.Declaration
Objective-C
- (void)didStopRequiringUserInterventionForPowerMode;