2016-04-08 12 views
1

У меня есть kontakt.io маяк Eddystone и попробуйте написать приложение для сканирующего маяка. Я использую Android Beacon Library и фоновое сканирование. Все в порядке, и мое приложение находит маяки в течение нескольких секунд. Но если я смоделирую режим Doze, используя это руководство http://developer.android.com/training/monitoring-device-state/doze-standby.htmlAndroid Beacon Library не сканирует, когда устройство находится в режиме доз

Поиск занимает около 5 минут. Иногда бывает несколько секунд, но иногда 5 минут.

В этой статье говорится, что мне не нужно вносить какие-либо изменения в код для режима Doze. http://developer.radiusnetworks.com/2015/09/29/is-your-beacon-app-ready-for-android-6.html

У меня есть OnePlus One с Android 6.

Пожалуйста, вы можете сказать мне, где может быть проблема?

ответ

0

Когда в фоновом режиме, Android Beacon Библиотека использует два метода, чтобы найти маяки на Android 5+:

  1. Hardware Bluetooth LE фильтры пакетов. Они будут предупреждать ваше приложение в течение нескольких секунд, если сработают.

  2. Периодическое сканирование Bluetooth LE по умолчанию выполняется каждые пять минут в фоновом режиме. Они предназначены для резервного копирования, если указанные фильтры не работают.

описание в вопросе предполагает аппаратные фильтры не работают в условиях испытания (Один плюс. Android-6, Doze режим.) На других устройствах в спящем режиме, таких как Nexus 9, аппаратное обеспечение Известно, что фильтры работают в режиме «Дозировка». Разница может быть специфичной для прошивки, то есть она ведет себя по-разному на разных моделях Android.

Для большинства применений быстрое обнаружение в режиме «Доза» не является критическим, так как телефон неподвижен в этом режиме и вряд ли встретит какие-либо новые маяки фиксированной позиции.