5

Meine Frage ist ziemlich einfach. Ich würde gerne wissen, was das beste Verfahren für meine App ist, damit es "dösfest" sein kann. Dies wird noch relevanter, da Android N Doze in einem größeren Szenario anwenden wird.Android Doze Mode - Bluetooth

Während Doze Documentation Lesen ein Teil Netzzugang zu erwähnen ist:

Im Doze-Modus versucht das System, die Batterie zu schonen, indem Anwendungen den Zugang zu Netzwerk und CPU-intensive Dienste zu beschränken. Es verhindert auch, dass Apps auf das Netzwerk zugreifen und ihre Jobs, Synchronisierungen und Standardalarme zurückstellen.

I Buetooth glauben fällt unter Network Access, ist das richtig?

Da ich kein aktiviertes Marshmallow (oder Android N) -Gerät besitze und der Emulator keine Bluetooth-Interaktion zulässt, kann ich das Verhalten meiner App im Doze-Modus nicht wirklich testen.

Wird der Doze-Modus eine laufende Bluetooth-Verbindung beenden? Gilt das gleiche für Bluetooth Classic und LE? Was ist mit Headsets mit Bluetooth A2DP?

Meine App muss diese Verbindung beibehalten, da sonst die Kernfunktionalität beeinträchtigt wird.

Sicherlich gibt es einige Ausnahmen für solche Fälle, in denen Ihr Gerät so lange mit einem Bluetooth-Remote-Gerät verbunden sein muss, wie es der Benutzer wünscht.

ich weiß, gibt es eine Doze Weiße Liste aber es wäre es in einigen Fällen scheinen, lassen Sie vielleicht nicht, die App so verhalten, als es 23 auf einem Gerät unter API würde

Vielen Dank für Ihre Hilfe!

+0

Ich habe nicht versucht, aber ich glaube nicht, dass Bluetooth betroffen ist – greywolf82

+0

@ greywolf82 danke für Ihre Eingabe, das sieht vielversprechend aus! Wenn du Zeit und Mittel hast, kannst du es versuchen? Ich würde es sehr schätzen. Vielen Dank ! – Mackovich

+0

Die Whitelist ermöglicht Ihrer App den Zugriff auf das Netzwerk und hält teilweise Wakelocks. Alle anderen Doze-Einschränkungen gelten weiterhin –

Antwort

0

Sieht aus wie Doze hat keine Beschränkung auf Bluetooth per se, aber um etwas sinnvolles zu tun, müssten Sie die CPU eingeschaltet halten und Wake-Locks werden in tieferem Schlummern ignoriert.

Wenn es eine Kernfunktionalität Ihrer App ist, können Sie versuchen, Benutzer zu whitelist Ihrer App zu bitten. Dies kann partial wake locks gewähren und die CPU eingeschaltet lassen.

Foreground services sind auch von irgendwelchen dösen Einschränkungen befreit, so dass eine andere transparente Möglichkeit ist.

+0

Von dem, was ich verstehe, sind Foreground-Dienste nur von der Tötung von im Hintergrund laufenden Apps befreit und haben keine Beziehung zum Deep-Sleep-Doze-Modus. – behelit