Estimote / iOS-Fleet-Management-SDK

Estimote Fleet Management SDK for iOS
https://developer.estimote.com
MIT License
1.18k stars 398 forks source link

Cannot remove an observer <CBPeripheral 0x1c03127e0> for the key path "delegate" from <CBPeripheral 0x1c03127e0> because it is not registered as an observer. #266

Closed m1entus closed 4 years ago

m1entus commented 6 years ago

I have issue with your SDK when using it in my app in iOS 11, it is happening only on device with iOS11.

zrzut ekranu 2017-09-28 o 17 44 38

EDIT: Found out that this is happening if i turn the build updater from the cloud

ESTBulkUpdater.sharedInstance().start(withCloudSettingsAndTimeout: 0)

treymcmeans commented 6 years ago

[[ESTBulkUpdater sharedInstance] startWithBeaconInfos:value timeout:60 * 60];

Having the same issue as well with above code.

martinklimek commented 6 years ago

Hello @tluck234 ,

Can you provide Estimote iOS SDK version you are using in you app?

m1entus commented 6 years ago

@martinklimek The issue is still not resolved in 4.25.4 zrzut ekranu 2017-10-18 o 10 43 31

Enqueued from com.estimote.ESTBeaconDeviceCentralManager (Thread 68)

martinklimek commented 6 years ago

Hello @m1entus,

Can you tell me exactly how you are using CoreBluetooth in your application? Even in 4.25.4 it is passible to experience this crash when you are using multiple CoreBluetooth scanners at the same time. Are you using anything else CB based in your app?

m1entus commented 6 years ago

@martinklimek We are using only CBPeripheralManager to determine bluetooth state in open func peripheralManagerDidUpdateState(_ peripheral: CBPeripheralManager), if is on, we are starting ESTBulkUpdater.sharedInstance().start(withCloudSettingsAndTimeout: 0) , this how our logic works. We are not using other CBCentralManager instance

martinklimek commented 6 years ago

Can you also tell me @m1entus what iOS version and hardware you use for testing?

m1entus commented 6 years ago

@martinklimek Personally i am using iPhone 6S and iOS 11.0 (15A372), but this is also happening for iPhone 6, or iPad Pro iOS 11.0.3

treymcmeans commented 6 years ago

@martinklimek it was 4.25.0. I am checking for CBCentralManagerDidUpdate as the only other place I am using CoreBluetooth.

m1entus commented 6 years ago

@martinklimek I have version 4.26.1 and if i run ESTBulkUpdater.sharedInstance().start(withCloudSettingsAndTimeout: 0) after some time, for example timer: 10 seconds, i am getting this crash. 1. Is to okay to run this method after some time again ? 2. If not, i think should be secured some way, because of crashing.

sergiobaptista commented 6 years ago

I'm experiencing this issue a short time after instantiating and starting an instance of ESTMeshGateway

abrahamduran commented 6 years ago

Any updates on this guys? This is a known bug already, and I think myself that is fairly critical.

treymcmeans commented 6 years ago

+1 for an update on this issue

parechynlecodegroup commented 6 years ago

Still have that issue in 4.26.3 I'm only using ESTDeviceManager for discovering beacons. iPhone 6, iOS 11.2.5

yo113 commented 5 years ago

is there any work around for this issue...?still happening with me too..

yo113 commented 5 years ago

@martinklimek I have version 4.26.1 and if i run ESTBulkUpdater.sharedInstance().start(withCloudSettingsAndTimeout: 0) after some time, for example timer: 10 seconds, i am getting this crash. 1. Is to okay to run this method after some time again ? 2. If not, i think should be secured some way, because of crashing.

Have you fixed it?