2011-10-20 15 views
7

Implementé la notificación dentro del servicio. La notificación funciona bien. Pero en el caso de que la aplicación ya se esté ejecutando e hice clic en la notificación de la barra de estado de Android, esta lanza una nueva copia de mi aplicación. que obviamente está mal. Debería ser si el usuario hace clic en la notificación de la barra de estado, debería iniciar la aplicación si la aplicación no se está ejecutando, de lo contrario debería abrir otra actividad (actividad del mensaje en mi caso). Intenté muchas sugerencias proporcionadas en un tipo similar de problema publicado aquí, pero no obtuve solución en mi caso.La notificación de la barra de estado de Android inicia la nueva aplicación aunque ya se está ejecutando. ¿Cómo sincronizar la aplicación de inicio desde el icono de la aplicación y la notificación de la barra de estado?

Respuesta

0

Aquí logro escapar de este problema. En primer lugar, definí la variable booleana en la actividad de entrada o clase que amplía la aplicación. establezco un atributo para esa variable verdadera cuando la aplicación se ejecuta y falsa cuando la aplicación sale. y verifico esa variable booleana a qué actividad abrir. en mi caso esto soluciona el problema. puede ser que ayude a su caso también. Es posible que el escenario sea diferente. buena suerte

0

Usando un valor lógico no es una buena solución para este problema. Para obtener más información, consulte el tiempo de vida de la aplicación. En su lugar, debe cambiar su launchMode a singleTask o singleInstance en su actividad objetivo y recibir su intento del método onNewIntent() de esa actividad.

Pero tenga en cuenta que si llama a super.onNewIntent (intención); luego se creará una segunda instancia de la actividad. Entonces no llames y haz lo que quieras con tu intención.

Cuestiones relacionadas