¿Por qué Android no retiene el estado de la aplicación después de presionar el botón Inicio si la aplicación se ejecuta primero en tyme desde el Administrador de aplicaciones?
-
Pasos para reproducir el problema.
- Cree o descargue cualquier aplicación con varias actividades.
- Cargue el archivo apk en sdcard o instálelo desde el mercado.
- Instale appliaction utilizando el Administrador de aplicaciones estándar.
- Después de la instalación en App Manager, pulse Abrir o pulse en el mensaje de notificación después de la descarga.
- Después de ejecutar la aplicación, vaya a la siguiente (segunda) pantalla de aplicación.
- Presione INICIO.
- Presione el icono de la aplicación.
-
Que pasó.
- Java.lang.RuntimeException: La aplicación "org.eclipse.ui.ide.workbench" no se pudo encontrar en el registro
- Alphabatize la lista de aplicaciones instaladas
- Cómo instalar / actualizar / quitar APK usando la clase "PackageInstaller" en Android L?
- Configuración de AVD a las mismas especificaciones que el dispositivo físico
- Cómo resolver la advertencia: Está instalando software que contiene contenido sin firmar y no se puede establecer la autenticidad y la validez de este software.
Appliaction se reinicia desde la primera pantalla y no retiene la segunda pantalla. La aplicación conserva las actividades de forma normal después de reiniciar la aplicación o si presiona el botón ATRÁS en la aplicación a la pantalla de inicio.
- El comportamiento correcto debe ser.
La aplicación debe conservar siempre las actividades de manera normal.
¿Cómo puedo resolver este problema para mi aplicación? ¿Puedo reiniciar la aplicación durante la primera ejecución?
- Configuración de Android Facebook SDK en Eclipse
- Cambiar android: installLocation de preferExternal a internalOnly
- ADT Bundle para Mac: Eclipse no se puede iniciar
- Android - Descargar e instalar el archivo apk en Webview
- Obtener la fecha de instalación de la aplicación en Android
- No se puede acceder a jarfile lib \ archquery.jar
- "Java: el paquete org.apache.cordova no existe" al completar Cordova en Android Studio
- Configuración de Phonegap Cordova Error Crear Error
Dependiendo de cómo se define la aplicación en el archivo de manifiesto y si tiene algún mecanismo para guardar y restaurar su estado ….
Según sus pasos, puede crear varias instancias de la misma aplicación (compruebe esto )
O no está usando la instancia Bunble en onCreate
Definitivamente no va a ser automático para todas las aplicaciones para volver a la pantalla de guardar en que fue cuando fue detenido o destruido (alguna aplicación no quiere que, pensar en su gestión de cuentas bancarias …)
Editar :
Por lo tanto, si entiendo correctamente de sus comentarios, funciona como esperaba al salir de la aplicación con la tecla ATRÁS, pero no cuando usa la tecla HOME …
Lea el enlace que publiqué: http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html
Comprenderá que al presionar la tecla HOME, la instancia de la aplicación en la que se encontraba no está destruida (y por lo tanto no se guarda el estado actual). Iniciarlo de nuevo sólo inicia otra instancia (desde la pantalla inicial).
Cuando el usuario presiona la tecla BACK, la actividad actual se destruye y se reanuda la actividad anterior.
…
Una tarea es una unidad cohesiva que puede pasar al "fondo" cuando los usuarios comienzan una nueva tarea o van a la pantalla de inicio, a través de la tecla HOME
Si quieres cambiar la forma en que se comporta, mira el launchMode
en el manifiesto.
Creo que App Manager ejecuta mi aplicación de forma incorrecta. Ejecuta mis aplicaciones en su tarea. Cuando presiono HOME y presiono el icono de la aplicación, ejecuto la segunda tarea con mi aplicación.
Lo probé. Hice dos aplicaciones App1, App2. App2 tiene dos actividades A y B. App1 ejecuta App2 de la manera más simple.
Intent intent = new Intent(Intent.ACTION_RUN); intent.setComponent(new ComponentName("org.app2.test", "org.app2.test.Screen1"));
Prueba 1. Ejecute App1. App1 ejecuta la actividad de App2 A. Acctivity A ejecuta la actividad B. Presione Inicio. Presiona el icono App2. Puede ver la actividad de la aplicación 2.
Que cambié el código para lanzar App2.
Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_LAUNCHER); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setComponent(new ComponentName("org.app2.test", "org.app2.test.Screen1"));
Prueba 2. Ejecutar aplicación1. App1 ejecuta la actividad de App2 A. Acctivity A ejecuta la actividad B. Presione Inicio. Presiona el icono App2. Puede ver la actividad de App2 B.
- El archivo Mp3 no se reproduce después de convertir desde byte android
- ¿Hay alguna forma de almacenar la imagen a tamaño completo devuelta de la actividad de la cámara en la memoria interna?