iOS SDK 15.6.7,
Android SDK 15.5.3,
Hello Screen Dynamic States,
Bluedot Cordova plugin 4.0.1,
Bluedot Xamarin Android wrapper 15.5.2,
Bluedot Xamarin iOS wrapper 15.6.6,
Bluedot React Native wrapper 2.3.0,
The Bluedot Point SDK version 15.4.0 is a major rewrite of our API interfaces. It includes many updates, such as
The authentication call has changed from
// Deprecated in 15.4.0 (void)authenticateWithApiKey: (NSString *)apiKey requestAuthorization: (BDAuthorizationLevel) authorizationLevel;
to
(void)initializeWithProjectId: (NSString * _Nonnull)projectId completion: (void (^_Nonnull)(NSError * _Nullable error)) completion;
To check if SDK is initialized:
(BOOL) isInitialized;
apiKey
will be replaced by projectId
. Note that you can find projectId
in Canvas.BDPSessionDelegate
will be deprecated in favor of completion callbacks.BDLocationManager
Singleton, for example:[BDLocationManager.instance requestAlwaysAuthorization]; [BDLocationManager.instance requestWhenInUseAuthorization];
If your users do not have precise location (accuracy authorization at a reduced level), you can make either of the following calls via our BDLocationManager
Singleton, to request for Temporary Full Accuracy Authorization.
[BDLocationManager.instance requestTemporaryFullAccuracyAuthorizationWithPurposeKey: @"YOUR_KEY"]; [BDLocationManager.instance requestTemporaryFullAccuracyAuthorizationWithPurposeKey: @"YOUR_KEY" completion: ^{}];
In 15.4.0 SDK, we give more control to you on when to start and stop Geo-triggering features. To start triggering Geofeatures, you will need to explicitly call the API.
stopGeoTriggeringWithCompletion
method is called the SDK will stop tracking the device. The deprecated logout()
method is no longer needed, the SDK will be initialized only once.(void)startGeoTriggeringWithCompletion: (void (^_Nonnull)(NSError * _Nullable error)) completion; (void)stopGeoTriggeringWithCompletion: (void (^_Nonnull)(NSError * _Nullable error)) completion;
(BOOL) isGeoTriggeringRunning;
In previous versions of the Point SDK, you would have implemented the BDPLocationDelegate
to receive Fence triggers callbacks. In the new version of the Point SDK, implement the following delegate to receive Geo-triggering related callbacks.
@protocol BDPGeoTriggeringEventDelegate <NSObject> @optional (void)onZoneInfoUpdate: (NSSet<BDZoneInfo *> *)zoneInfos; (void)didEnterZone: (BDZoneEntryEvent) enterEvent; (void)didExitZone: (BDZoneExitEvent) exitEvent; @end
BDPLocationDelegate
will be deprecated. You may find most of the features migrated to either BDPGeoTriggeringEventDelegate
or BDPBluedotServiceDelegate
BDPLocationDelegate
to receive beacon related callbacks.BDPBluedotServiceDelegate
There will a new Bluedot Service Level Callback for all essential callbacks for the Point SDK.
@protocol BDPBluedotServiceDelegate <NSObject> @optional (void)locationAuthorizationDidChangeFromOldAuthorizationStatus: (CLAuthorizationStatus) oldAuthorizationStatus toNewAuthorizationStatus: (CLAuthorizationStatus) newAuthorizationStatus; (void)lowPowerModeDidChange: (Bool) isLowPowerMode; (void)bluedotServiceDidReceiveError:(NSError *)error // iOS 14 only (void)accuracyAuthorizationDidChangeFromOldAccuracyAuthorization: (CLAccuracyAuthorization) oldAccuracyAuthorization toNewAccuracyAuthorization: (CLAccuracyAuthorization) newAccuracyAuthorization API_AVAILABLE(ios(14)); @end
// Deprecated in 15.4.0 (void)startTempoTracking: (NSString * _Nonnull)destinationId
to
(void)startTempoTrackingWithDestinationId: (NSString * _Nonnull)destinationId completion: (void (^ _Nonnull)(NSError * _Nullable error)) completion;
2. The Stop Tempo API call has changed from
// Deprecated in 15.4.0 (void)stopTempoTracking
to
(void)stopTempoTrackingWithCompletion:completion: (void (^ _Nonnull)(NSError * _Nullable error)) completion;
3. New API to check if Tempo is running:
(BOOL) isTempoRunning;
4. Updates to BDPTempoTrackingDelegate
:
// Deprecated in 15.4.0, in favor of completion callbacks in Start/Stop Tempo API. (void)didStartTracking (void)didStopTracking // new in 15.4.0 (void)tempoTrackingDidExpire;
NSException
for any error detected. This has been changed in favor of completion callbacks.