Vivir sin ventana
Una aplicación que sigue trabajando escondida: qué cambia en el ciclo de vida, cómo se comporta con la batería, y el arranque automático que hay que pedir bien.
El trabajo periódico
Lo que una aplicación escondida hace, y donde se decide si molesta:
La tercera fila es la más rentable y la más olvidada: una aplicación escondida no debe estar pintando nada. Si tu frontend tiene animaciones o temporizadores que siguen corriendo con la ventana oculta, están gastando por nada.
El reposo del sistema
Un portátil se duerme, y hay que contar con ello:
- Al despertar, el tiempo ha pasado. Un temporizador de cinco minutos puede dispararse a las tres horas, o dispararse muchas veces de golpe según cómo esté implementado. Comprueba el reloj, no cuentes ticks.
- Las conexiones se han caído. Al volver, hay que reconectar — y ése es el momento de reintentar de inmediato en vez de esperar al siguiente intervalo.
- Y no impidas el reposo salvo que estés haciendo algo que el usuario pidió y esté en curso. Hay mecanismos para pedir que la máquina no se duerma; usarlos «por si acaso» es una de las cosas que hacen que una aplicación aparezca en la lista de las que consumen.
El arranque automático
La función que más molesta si se hace mal:
La regla 3 se olvida y es muy visible: una aplicación que se pone en el arranque y abre su ventana cada vez que el usuario enciende el ordenador es más molesta que una que no arranca.
Volver a aparecer
Cuando el usuario invoca la ventana escondida:
- Restaurarla donde estaba, no en una posición nueva.
- Traerla al frente y darle el foco. Mostrarla detrás de otras ventanas es un fallo que ocurre y desconcierta.
- Y si estaba minimizada, desminimizarla. Son dos estados distintos y hay que manejar los dos.
- Actualizar lo que se muestre, porque puede llevar horas sin refrescarse — y ahora sí se ve.