Bluetooth в iOS - когда остановить сканирование, если периферийные устройства не найдены

Я использую "scanForPeripheralsWithServices" в iOS и успешно подключаюсь к своему устройству.

Но документация Apple не охватывает случай, когда не найдено подходящего периферийного устройства. Какова оптимальная практика для определения отсутствия доступных периферийных устройств, остановки сканирования и уведомления пользователей приложения?

1 ответ

Решение

Вы можете достичь этого, используя NSTimer, И с помощью функции сканирования (инициализации) Bluetooth, запланируйте этот таймер тоже.

@implementation YourClass
{
   NSTimer *timer;
}
- (void)startScan
{
   // Bluetooth related code
   timer = [NSTimer scheduledTimerWithTimeInterval:25 target:self selector:@selector(stopScan) userInfo:nil repeats:YES];
}

// Stops the Scanning and Timer
- (void)stopScan
{
   [yourCBCentralManager stopScan];
   [timer invalidate];
   timer = nil;
}

@end
Другие вопросы по тегам