Anfitrión androide de Android y sueño del dispositivo

Tengo un dispositivo del USB que estoy interconectando con una aplicación androide usando el modo del anfitrión del USB. El dispositivo envía algunos datos aproximadamente una vez cada 10 segundos, pero en algunos casos (datos de alta prioridad) los datos pueden llegar en cualquier momento. En el lado de la aplicación de Android tengo un servicio que lee los datos utilizando el modo de host USB API. Mi aplicación Android procesa los datos y escribe los datos en el dispositivo usb. Ahora todo funciona bien hasta que el dispositivo Android se va a dormir. El servicio se detiene y se detiene toda comunicación. Entiendo que puedo usar el bloqueo parcial de la vigilia para mantener la CPU en funcionamiento y la comunicación y que tendrá un gran impacto en la batería. Aunque tengo dos preguntas:

  1. Dado que el dispositivo USB puede enviar datos en cualquier momento, realmente necesito el servicio de Android para estar vivo todo el tiempo, especialmente porque los datos de mayor prioridad pueden venir en cualquier momento. Esto podría significar potencialmente que adquiero el bloqueo de la vigilia parcial y nunca lo libero. Havent sido capaz de encontrar en la documentación si esto es permitido y si sí cuáles son las ramificaciones además de drenar la batería?

  2. ¿El API de modo host USB o cualquier otra API proporciona una solución diferente y potencialmente mejor?

La aplicación es una aplicación personalizada con usuarios limitados y el drenaje de la batería no es un problema importante. Sólo quiero entender si hay otros asuntos que necesito tener cuidado o si hay una manera mucho mejor de hacerlo.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.