2017-04-02 2 views
0

Ich benutze AltBeacon Bibliothek im Dienst, um meine Beacon alle 1 Sekunde zu finden, wenn die App im Vordergrund. Auf Galaxy s7, wenn die App zum Hintergrund geht, hört es auf, jede Sekunde das Signal zu finden, , stattdessen gibt es alle paar Sekunden Daten zwischen 5 und 30 Sekunden zurück. Ich kann sehen, dass "didRangeBeaconsInRegion" jede Sekunde anrufen, aber es die meiste Zeit ohne Beacons zurückkehren.Android AltBeacon Bibliothek Stop finde Beacons alle 1 Sekunde wenn App im Hintergrund auf Galaxie s7

Ich muss das Verhalten von Vordergrund behalten, wenn die App im Hintergrund ist.

Dies ist meine BeaconManager Konfiguration:

private static long EXIT_PERIOD = 16500; 
private static long SCAN_PERIOD = 1150; 
. 
. 
. 
beaconManager = BeaconManager.getInstanceForApplication(this); 
BeaconManager.setRegionExitPeriod(EXIT_PERIOD); 
beaconManager.setBackgroundScanPeriod(SCAN_PERIOD); 
beaconManager.setForegroundScanPeriod(SCAN_PERIOD); 
beaconManager.setBackgroundBetweenScanPeriod(0); 

Tnx

Antwort

0

Einige Versionen von Android 7.x für Samsung-Geräte setzen Bluetooth scannt in Low-Power-Modus, wenn eine App keine Aktivitäten im Vordergrund hat. Der Grund, warum Sie Les häufig erkannt haben, ist, dass sich Low-Power-Scans bei Android so verhalten.

Sie können hier mehr über dieses Thema lesen:

https://github.com/AltBeacon/android-beacon-library/issues/483

klar zu sein, ist dies scheint Android eine Samsung-spezifische Anpassung zu sein. Es gibt keine bekannte Problemumgehung, um zu verhindern, dass das Betriebssystem einen Low-Latency-Scan mit einem Low-Power-Scan überschreibt.

Verwandte Themen