2016-04-08 25 views
1

Ich habe Kontakt.io Eddystone Beacon und versuche, App für Scanning Beacon zu schreiben. Ich benutze Android Beacon Library und Hintergrundscan. Alles ist in Ordnung und meine App findet Beacons in wenigen Sekunden. Wenn ich jedoch den Doze-Modus unter Verwendung dieses Handbuchs http://developer.android.com/training/monitoring-device-state/doze-standby.htmlAndroid Beacon Library nicht scannen, wenn das Gerät im Schlafmodus ist

simuliere, dauert die Suche ca. 5 Minuten. Manchmal ist einige Sekunden, aber manchmal 5 Minuten.

Dieser Artikel sagt, dass ich im Doze-Modus keine Codeänderungen vornehmen muss. http://developer.radiusnetworks.com/2015/09/29/is-your-beacon-app-ready-for-android-6.html

Ich habe OnePlus One mit Android 6.

Bitte, können Sie mir sagen, wo ein Problem sein könnte?

Antwort

0

Wenn im Hintergrund verwendet die Android Beacon-Bibliothek zwei Techniken Beacons auf Android zu finden 5+:

  1. Hardware Bluetooth LE-Paketfilter. Diese werden Ihre App innerhalb weniger Sekunden alarmieren, wenn sie ausgelöst wird.

  2. Periodische Bluetooth LE-Scans, die standardmäßig alle fünf Minuten im Hintergrund ausgeführt werden. Sie sind als Backup vorgesehen, falls die obigen Filter versagen sollten.

Die Beschreibung in der Frage schlägt vor, die Hardware-Filter sind nicht unter den Bedingungen des Tests (One Plus. Android 6, Doze-Modus.) Auf anderen Geräten im Doze-Modus, wie das Nexus 9 arbeitet, Hardware Es ist bekannt, dass Filter im Doze-Modus funktionieren. Der Unterschied kann Firmware-spezifisch sein, was bedeutet, dass er sich bei verschiedenen Android-Modellen unterschiedlich verhält.

Für die meisten Anwendungen ist eine schnelle Erkennung im Doze-Modus nicht kritisch, da das Telefon in diesem Modus unbewegt ist und keine neuen Fixed-Position-Beacons findet.