Как правильно остановить сканирование маяка с помощью android-beacon-library (altbeacon)
Я использую android-beacon-library от altbeacon для сканирования на переднем плане. я кладу
beaconManager.bind(это) в OnCreate
и положи
beaconManager.unBind(this) в onDestroy ()
, но когда я проверял logcat, я видел
E/BeaconService: onDestroy()
я думал, что это останавливает процесс сканирования, но странно, что он все еще получает несколько из этого: `
D / BluetoothLeScanner: onScanResult () - ScanResult {mDevice = D2: 95: 10: F1: 2A: AF, mScanRecord = ScanRecord [mAdvertiseFlags = 6, mServiceUuids = null, mManufacturerSpecificData = {76 = [2, 21, -3, 91, 6, -109, -92, -30, 79, -79, -81, -49, -58, -21, 7, 100, 120, 37, 39, 27, 39, 27, -59]}, mServiceData={00005242-0000-1000-8000-00805f9b34fb=[65, 99, -46, -107, 16, -15, 42, -81]}, mTxPowerLevel=-2147483648, mDeviceName=neartalk], mRssi=-59, mTimestampNanos=120278331850532}`
У меня вопрос как правильно остановить сканирование маяка???
2 ответа
Я подозреваю, что это новая ошибка, появившаяся в версии библиотеки 2.10. Начиная с этой версии, поведение цикла сканирования было изменено, чтобы не останавливать сканирование в конце цикла на устройствах, которые поддерживают обнаружение нескольких маяков за сканирование. Это добавляет экономию энергии и преимущества надежности обнаружения пакетов. Но думая об этом сейчас, я думаю, что это изменение вызовет именно те симптомы, которые вы описываете.
Если у вас есть шанс, убедитесь, что проблема исчезла, если вы выбрали версию 2.9. если подтвердится, я открою сообщение об ошибке и исправлю.
Да, Дэвид, я могу подтвердить, что при использовании Android-Beacon-Library версии 2.9.2 это поведение не воспроизводится...