Me he encontrado con problemas últimamente con onSaveInstanceState()
y onRestoreInstanceState()
. Tengo varias actividades que usan estos métodos para guardar el estado en el caso de que el sistema los limpie. La mayoría de ellos funcionan, excepto uno, y no tengo idea de por qué.onRestoreInstanceState() no se llama cuando se espera
Lo que pasa es específicamente lo siguiente:
- tengo mi emulador en funcionamiento, y la configuración de las herramientas dev a
destroy()
todas las actividades cuando ya no son visibles. (Para que pueda probar que guardar/restaurar funciona correctamente) - La actividad en cuestión se inicia y procedo a cambiar parte de su estado.
- Empiezo una nueva actividad, la dejo funcionar por un momento, y luego uso el botón 'volver' para ir a mi actividad anterior.
- Al volver a la actividad en cuestión, veo que el estado predeterminado está de vuelta, por lo tanto, no tiene el estado que debería.
me he dado cuenta de que el onSaveInstanceState()
se llama, onCreate()
se llama, pero tiene un paquete nulo, y onRestoreInstanceState()
nunca es llamado.
¿Alguien ha visto esto antes?
Lo siento, sé que esto preguntas hace mucho tiempo pero ¿cómo salvaste el estado de tu actividad? ¿Podrías por favor mirar mi pregunta? http://stackoverflow.com/questions/26142255/retrieve-an-activity-after-time-out-warning-notification – Hamid