|
||
|
![]() |
![]() |
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
|
||||
|
||||
![]()
Buenos días, es mi primer consulta, acabo de registrarme. Tengo una inquietud, estoy desarrollando una aplicación para mi universidad. El app tiene integrado un chat, con messageservice, etc...
Hasta ahí todo va bien, el problema es que cuando pasa a segundo plano se me cierra la sesión del chat cuando el sistema operativo cierra aplicaciones. El servicio no se detiene, osea eso corre en segundo plano común y corriente, pero me pide login cuando la abro nuevamente. ¿Hay alguna manera de que no se cierre la sesión? ¿Alguien sabe como colocar una notificación persistente como BBM o cual sería la solución recomendable para que no sea necesario autenticarse cada vez que el S.O recicla? Muchas gracias por la atención prestada, espero me puedan ayudar. ![]() |
|
#2
|
||||
|
||||
Los servicios como tú mismo dices no se mueren, pero la Activity si se muere, y si lo primero que hace tu Activity Main es solicitar login lo hará siempre que la abras y no esté en memoria, aunque el servicio esté en funcionamiento.
Lo que tienes que hacer es al abrir la Activity preguntar si el servicio está en marcha, y si es así pues ya depende de como hagas para comunicarte con el servicio, si lo haces mediante un ResultReceiver tendrás que "bindearte" al servicio desde tu nueva Activity. Si lo haces mediante BroadcastReceiver lo único que tendrás que hacer es registrar el BroadcastReceiver en la nueva Activity. En cuanto a lo de la notificación persistente, se hace con "setOngoing(true)" cuando creas la notificación. Pero eso no te garantiza que la Activity no se cierre, y si el servicio se muere la notificación no se irá, así que asegúrate de que el servicio la limpie cuando se destruye. |
![]() |
![]() |
||||||
|
Herramientas | |