|
||
|
![]() |
![]() |
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
![]() |
|
Herramientas |
#1
|
||||
|
||||
Servicio con conexion a REST
Hola a todos,
estoy desarrollando una app la cual tiene un servicio en segundo plano que se conecta a un API REST para consultar un email. La cosa es que si el teléfono no esta en reposo me realiza bien la conexión y obtiene la respuesta pero cuando el teléfono entra en reposo no se comunica con el API y no me realiza la conexión, o mas bien no se conecta en el tiempo establecido. ¿Alguien puede orientarme en como puedo resolver este problema? Un saludo. |
|
#2
|
||||
|
||||
Puedes hacer que el servicio sea Wakeful, pero te va a drenar la batería que da gusto.
Lo mejor será que te apoyes en el AlarmManager configurándolo como RTC_WAKEUP y lances un IntentService cada X tiempo. |
Gracias de parte de: | ||
#3
|
||||
|
||||
¿Si lo hago Wakeful puede notarse mucho la bateria? |
#4
|
||||
|
||||
Es poner al principio del servicio un PARTIAL_WAKE_LOCK. Tendrás que darle a la app permisos de WAKE_LOCK.
http://developer.android.com/referen...erManager.html El ejemplo es para SCREEM_DIM_WAKE_LOCK, sólo tienes que cambiarlo por PARTIAL_WAKE_LOCK. Pero si, se va a notar muchísimo la batería, ten en cuenta que el móvil NUNCA entrará en reposo y siempre estará funcionando el procesador. ¿Cuánto te gasta el móvil escuchando música con la pantalla apagada? Pues te gastará casi igual. |
Gracias de parte de: | ||
#5
|
||||
|
||||
Es poner al principio del servicio un PARTIAL_WAKE_LOCK. Tendrás que darle a la app permisos de WAKE_LOCK.
http://developer.android.com/referen...erManager.html El ejemplo es para SCREEM_DIM_WAKE_LOCK, sólo tienes que cambiarlo por PARTIAL_WAKE_LOCK. Pero si, se va a notar muchísimo la batería, ten en cuenta que el móvil NUNCA entrará en reposo y siempre estará funcionando el procesador. ¿Cuánto te gasta el móvil escuchando música con la pantalla apagada? Pues te gastará casi igual. ![]() ¿Tienes algún ejemplo con esta clase? |
#6
|
||||
|
||||
![]() ![]() ![]() Muchisimas gracias compañero, al final lo he resuelto con AlarmManager y ahora me funciona a la perfección. ![]() De nuevo muchas gracias!!!! |
#7
|
||||
|
||||
Hola de nuevo,
pues parece que me sigue fallando la aplicación. Todo funciona correctamente hasta que el teléfono lleva un rato en reposo (Pantalla negra). Cuando esta en reposo y llega el momento de conectar el el API me devuelve un conection refused. Lo implemente con el AlarmManager pero aun asi me sigue fallando. Entiendo que el problema esta en que cuando el telefono entra en reposo por alguna razón (ahorra de batería) se desconecta de la red, pero si es asi ¿Como hago para reestablecer la conexión y poder comunicar con el API? He intentado que si no tengo conexión lanzar varias veces la llamada al API, pero nada solo entra en bucle y no consigo conectar. A ver si alguien puede echarme una mano. Saludos. |
![]() |
![]() |
||||||
|
Herramientas | |