У меня есть TextViews, которые отображают информацию iBeacon (например, uuid, major, minor и т. Д.) И кнопку Detect/Stop для запуска/остановки сканирования BLE. Когда я нажимаю кнопку, чтобы начать сканирование, когда iBeacon выключен, приложение не отображает ничего, как ожидалось. Однако, когда я запускаю сканирование при включении iBeacon, а затем я выключаю iBeacon во время сканирования, приложение по-прежнему отображает информацию, как будто она все еще обнаруживает iBeacon. Когда приложение сканирует BLE в то время как маяк включен, он даеткак вы обнаруживаете, когда передатчик iBeonon выключен? Android
D/BluetoothAdapter: onScanResult() - Device = (мой номер устройства) RSSI = -49
в LogCat. Когда я выключаю маяк во время сканирования, это дает
D/BluetoothAdapter: startLeScan(): нулевой
и
D/BluetoothAdapter: onClientRegistered() - состояние = 0 clientIf = 4.
Есть ли способ определить, отключен ли iBeonon с помощью LeScanCallback или что-нибудь еще? Я попытался узнать, как это сделать из Android iBeacon Library, но я до сих пор не знаю.
Заранее спасибо.
Это правильно. И при использовании библиотеки Android Beacon обратный вызов 'didExitRegion' - это то, что вы получаете, когда маяк не был обнаружен в течение разумного периода времени (около 6 секунд по умолчанию.) – davidgyoung
Я проверил, когда был получен последний обратный вызов, и сравнивали его с текущим временем. Он работает очень хорошо. Спасибо огромное! – user31534513