2017-08-24 3 views
1

Ich habe einen Sensor Event Listener in einem Service implementiert, der funktioniert, solange die Sampling-Periode und die maximale Latenz unter 1s liegen, aber sobald ich die Sampling-Periode über 1s verlängere Der Sensor wird überhaupt nicht aktualisiert.Service getötet, wenn der Sensor langsam aktualisiert wird

Ich möchte die Sampling-Periode zu 10s möglicherweise 30s als die App, die ich entwickeln werde die Rotationsvektordaten über längere Zeiträume (5-10h) benötigen und ich versuche, so viel Akkulaufzeit zu sparen Smartwatch wie möglich.

ich weitere Informationen gerne zur Verfügung stellen würde, wenn ich nicht klar genug,

im Voraus Danke bin!

Antwort

0

So fand ich das Problem und anscheinend ist es die Hardware-Beschränkungen des Geräts. Sie können die maximale Verzögerung finden, indem Sie sensor.getMaxDelay aufrufen. Wenn die Verzögerung höher eingestellt ist, wird die Verzögerung der Sensoren auf diese eingestellt. Bei älteren Geräten kann es jedoch funktionieren oder nicht. Link to android docs

Es scheint, dass wenn Sie einen Sensor langsamer als die maximale Verzögerung möchten Sie eine Art von Runnable oder Thread implementieren müssen.

Verwandte Themen