Android Wear: medición de sensores y prevención del modo ambiente / suspensión

He creado una aplicación para Android Wear que necesita medir los sensores de movimiento (acelerómetro) continuamente durante una hora más o menos para fines de recopilación de datos. Durante el funcionamiento, he tenido problemas con el dispositivo que entra en modo ambiente (o inactivo) y ralentiza (o apaga) los sensores. Como resultado, estoy usando el siguiente comando para bloquear la pantalla y parece que funciona. Pero también parece un desperdicio, ya que en realidad no necesito la pantalla encendida, solo los sensores en funcionamiento.

getWindow (). clearFlags (WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); // Permitir ir a dormir

Actualmente, tengo el método onSensorsChanged () en la actividad principal. Estoy dispuesto a ponerlo en un servicio, pero por lo que entiendo, eso no ayudará si todavía está en el hilo principal de la interfaz de usuario. Podría ponerlo en su propio hilo, pero no estoy seguro de que eso presente que el modo ambiente ralentice los sensores. Preguntas: 1) ¿Hay alguna forma de prevenir el modo ambiente? ¿O si se detecta que lo apaga? 2) Si los sensores están en su propio servicio / subproceso, ¿puedo dejar que la actividad se suspenda y aún así mantener la recolección del sensor a toda velocidad? 3) Si los sensores están en su propio servicio / hilo, ¿puedo enviar datos a través de la aplicación de datos al teléfono? Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta