У меня есть простое приложение для Android, которое необходимо подключить к нашему оборудованию через BLE.
В iOS оба случая имеют почти одинаковое время.
Случай 1:
- Сканирование для идентификатора услуги.
- Получение результатов.
- Подключение
- Обнаружение услуг
Случай 2:
- Подключение напрямую через Mac
- Службы поиска
Используемая библиотека: Android-Scanner-Compat-Library
Код:
Сканирование:
scanner = BluetoothLeScannerCompat.getScanner();
final ScanSettings settings = new ScanSettings.Builder()
.setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY)
.setUseHardwareBatchingIfSupported(false).build();
final List<ScanFilter> filters = new ArrayList<>();
Log.i(TAG, "Scanning.....");
scanner.startScan(filters, settings, scanCallback);
mHandler.postDelayed(() -> {
stopScan();
}, SCAN_DURATION);
Остановить сканирование:
scanner.stopScan(scanCallback);