iOS-Fleet-Management-SDK: Nearable Sticker stopped working on iOS 13 with EstimoteSDK
Basic information
Estimote iOS SDK version: pod ‘Estimote SDK’ newest iOS device(s) affected: all iOS devices iOS version(s) affected: iOS 13 Estimote device hardware version: Nearable Sticker Estimote device firmware version:
Additional information
Please read the checklist and place x
sign where apropriate for your use case.
- [? ] My beacons have Estimote Monitoring enabled (check it in the Estimote Cloud, or via app).
- My iOS device/devices supports BLE (iOS must be 5.0 or higher).
- My iOS device/devices have Bluetooth enabled.
- My app has
NSBluetoothPeripheralUsageDescription
in itsInfo.plist
file. - My app has Location Permissions granted.
- My app has
NSLocationWhenInUseUsageDescription
andNSLocationAlwaysAndWhenInUseUsageDescription
keys in itsInfo.plist
file. - My app has
NSLocationAlwaysUsageDescription
orNSLocationWhenInUseUsageDescription
in itsInfo.plist
file. - If my app is supporting iOS 10 and earlier, and has
NSLocationAlwaysUsageDescription
key in itsInfo.plist
file. - [?] If my app has to run in the background, it has UIBackgroundModes key with value bluetooth-central in its Info.plist file.
Description
After upgrade to iOS 13 working code that detects Nearble stickers stopped working. Now delegate method is never called.
Here are my code snippets:
private func startRangingNearables() {
self.tables.forEach { table in
guard let nearableIdentifier = table.beaconId else { return }
self.nearableManager.startRanging(forIdentifier: nearableIdentifier)
}
}
func nearableManager(_ manager: ESTNearableManager, didRangeNearable nearable: ESTNearable) {
if nearable.rssi <= 0 {
print("Did range nearable: \(nearable.identifier), power: \(nearable.txPowerInDbm), rssi: \(nearable.rssi), interval: \(nearable.advInterval)")
beaconContainer.addBeacon(nearable.toBeacon())
}
I haven’t changed recently nothing in my code, maybe there was update of EstimodeSDK pod and update from iOS 12.4 to iOS 13.
Thay are still detected in Estimote iOS app so they are live and identifiers are correct
Ranging nearables failed with error: Error Domain=com.estimote.nearables Code=301 “Blueooth is not powerd on.” UserInfo={NSLocalizedDescription=Blueooth is not powerd on.}
Additional information
The same code worked when run on iOS 12 device, but doesn’t work on iOS 13. iBeacons work correctly, only Nearable Stickers stopped working.
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 1
- Comments: 22 (11 by maintainers)
🙇 pleasure is mine! Glad we helped!
@chwastek Wonderful, it work perfectly on iOS 13 and iOS 12 as well. Thanks a lot for you support. No need to change any lines of code.
@michzio @HoangNguyenBigLabs we released just now a new version https://github.com/Estimote/iOS-Fleet-Management-SDK/releases/tag/4.31.2 (this one should mainly fix issue with legacy beacons). LMK if it works for you
Ok I will check it today or tomorrow and give you info how it works now 😃
Thanks, The library (https://github.com/Estimote/iOS-Bluetooth-Scanning/releases/tag/v1.0.6) work on iOS 13.
We’re working on fixing that as we speak 😃 though can you specify which version of
EstimoteBluetoothScanning
do you have? This library should work (starting with https://github.com/Estimote/iOS-Bluetooth-Scanning/releases/tag/v1.0.6)… if it’s not then please submit the issue there as well.Thanks for spotting bug, we’ll try release fix asap.