¿Cómo evitar que se vuelva a crear una actividad al apagar la pantalla?Evitar que se vuelva a crear la actividad de Android al apagar la pantalla
Lo que hago
- Start Bejewels e ir a la pantalla de la joyería.
- Presione el botón de encendido en breve. La pantalla está apagada, pero el dispositivo no.
- Presione el botón de encendido nuevamente.
Lo que veo
la misma pantalla que antes de apagar la pantalla.
En el caso de mi solicitud (trivial, sólo una aplicación Web con un solo WebView) el escenario es el siguiente:
Lo que hago
- empezar mi aplicación El método activity onCreate() carga una URL en WebView.
- Presione el botón de encendido en breve. La pantalla está apagada, pero el dispositivo no.
- Presione el botón de encendido nuevamente.
Lo que veo
La vista Web está recargando la página.
Lo que esperaba
Como en el caso Bejewels Quiero ver la misma pantalla, que para mi aplicación es la página en su estado anterior: secuencias de comandos se ejecutan, una forma campos son lleno etc.
Depuración mostró, que estaba equivocado (en una pregunta anterior) y OnDestroy() y onCreate() están siendo llamados uno por uno cuando la pantalla se acaba de encender. Y dado que todavía escucho una música, reproducida por un guión, cuando la pantalla está apagada, parece que tanto la actividad como el WebView existen hasta que presiono el botón de encendido nuevamente.
Lo que probé.
- android: alwaysRetainTaskState = "true" El mismo comportamiento.
- Lectura sobre los intentos (en vano, simplemente no entendí, cómo se aplican a mi situación).
- Usando PhoneGap. Se comporta de manera diferente: simplemente mata toda la aplicación al presionar el botón de encendido.Esto ES mejor, pero no el mejor.
Nada ha cambiado. (No eliminé android: alwaysRetainTaskState = "true"). – noober
después de presionar el botón de encendido para apagar la pantalla y luego de nuevo a la pantalla en el que se llama onResume(), ¿qué estás haciendo en onResume()? – Bush
1. Sí, se llama onResume(). Lo he comprobado (anulado y llamado Tostada). 2. Perdón por ser tonto, simplemente no imaginé que tenía que hacer algo en onResume(). Por lo tanto, no fue anulado y ahora contiene solo la llamada Toast. 3. Comportamiento ahora es el siguiente: después de presionar el botón la primera vez, cuando la pantalla está apagada, la página se recarga en segundo plano (la música se detiene para reproducirse y luego se reproduce desde el inicio, hay una sección de javascript en carga de la página web que inicia la música jugando). – noober