Hey,
I continued a Beacon related Project from another student and had the task to include Estimote Beacons with secure UUID enabled. I was able to get the delegate method to work with the ESTBeaconManager with the following function header(this was an suggestion from Xcode, i have no Idea what is going on but it detects my Beacons).
@objc(beaconManager:didRangeBeacons:inRegion:)func beaconManager(_ manager: Any, didRangeBeacons beacons: [CLBeacon], in Region: CLBeaconRegion) {
When i changed ESTBeaconControllerDelegate
to ESTSecureBeaconControllerDelegate
and
ESTBeaconcontroller()
to ESTSecureBeaconController
the App did Compile but the function no longer works
ESTConfig.setupAppID("**********************", andAppToken: "********************************")
is set in the AppDelegate.swift
requestAlwaysAuthorization()
beaconManager.delegate = self
is also set.
as well as
NSLocationAlwaysUsageDescription
I Cant figure out what the Problem is. From the Documentation, both Protocols look very similar
ESTBeaconManagerDelegate.h
- (void)beaconManager:(ESTBeaconManager *)manager
didRangeBeacons:(NSArray *)beacons
inRegion:(CLBeaconRegion *)region;
ESTSecureBeaconManagerDelegate.h
- (void)secureBeaconManager:(ESTSecureBeaconManager *)manager
didRangeBeacons:(NSArray *)beacons
inRegion:(CLBeaconRegion *)region;
And since it is recommended to use manager : Any instead of the BeaconManager classes i cant figure out what i missed.
Iam developing for iOS10 in Xcode 8/Swift 3
Thanks for the Help in Advance
Scarecrow
EDIT:
I found the Problem, ESTSecureBeaconManagerDelegate requires you to use an ESTBEacon Array.
@objc(beaconManager:didRangeBeacons:inRegion:) func beaconManager(_ manager: Any, didRangeBeacons beacons: [ESTBeacon], in Region: CLBeaconRegion) {.....
did the Trick.
But I Have another Question.
Is there a Possibility to change the SecureUUID rotation Intervall in the Estimate Cloud or the Estimote App?