CoreBluetooth Сбои с характеристиками быстрого обновления

У меня очень быстрое обновление характеристик BLE (> 20 обновлений в секунду). Мое приложение работает нормально до того момента, когда я начинаю получать обновления от характеристики. Характеристика установлена ​​для уведомления.

Мое приложение как два ViewControllers, одно для выбора и подключения устройств BLE, другое для чтения характеристик и подписки на них. Сбой происходит при переходе назад к контроллеру вида, который обнаруживает устройства BLE.

(lldb) bt сообщает следующее:

* thread #1: tid = 0x1605b9, 0x000000019700bbd0 libobjc.A.dylib`objc_msgSend +    16, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10)
* frame #0: 0x000000019700bbd0 libobjc.A.dylib`objc_msgSend + 16
frame #1: 0x0000000185440b3c CoreBluetooth`-[CBPeripheral handleMsg:args:] + 284
frame #2: 0x000000018543c9d4 CoreBluetooth`-[CBCentralManager xpcConnection:didReceiveMsg:args:] + 164
frame #3: 0x0000000100138fd4 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame #4: 0x0000000100138f94 libdispatch.dylib`_dispatch_client_callout + 16
frame #5: 0x0000000100143db8 libdispatch.dylib`_dispatch_queue_drain + 780
frame #6: 0x000000010013c2c4 libdispatch.dylib`_dispatch_queue_invoke + 132
frame #7: 0x000000010013d6f4 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 532
frame #8: 0x000000018578b7f8 CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame #9: 0x00000001857898a0 CoreFoundation`__CFRunLoopRun + 1492
frame #10: 0x00000001856b52d4 CoreFoundation`CFRunLoopRunSpecific + 396
frame #11: 0x000000018eecb6fc GraphicsServices`GSEventRunModal + 168
frame #12: 0x000000018a27afac UIKit`UIApplicationMain + 1488
frame #13: 0x00000001000d861c Sting Ray Controller (v3) i5 1.0.2`main(argc=1, argv=0x000000016fd2f9e0) + 124 at main.m:14
frame #14: 0x0000000197676a08 libdyld.dylib`start + 4

Я только догадываюсь, но происходит ли это потому, что он пытается прочитать и обработать характеристику, когда я закрываю ViewController, работающий со сбором обновлений?

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]