Cómo maneja Chrome las actualizaciones del manifiesto de la app web

Qué se necesita para cambiar los íconos, los atajos, los colores y otros metadatos de tu AWP

Cuando se instala una AWP, el navegador usa información del manifiesto de la app web para el nombre de la app, los íconos que debe usar y la URL que se debe abrir cuando se inicia la app. Pero ¿qué sucede si necesitas actualizar los atajos de la app o probar un nuevo color de tema? ¿Cuándo y cómo se reflejan esos cambios en el navegador?

En la mayoría de los casos, los cambios deberían reflejarse en uno o dos días después del lanzamiento de la app web progresiva, una vez que se haya actualizado el manifiesto.

Actualizaciones en Chrome para computadoras

Cuando se inicia la AWP o se abre en una pestaña del navegador, Chrome determina la última vez que se verificó el manifiesto local en busca de cambios. Si el manifiesto no se revisó desde la última vez que se inició el navegador o no se revisó en las últimas 24 horas, Chrome realizará una solicitud de red para el manifiesto y, luego, lo comparará con la copia local.

Si cambian algunas propiedades del manifiesto (consulta la lista a continuación), Chrome pone en cola el manifiesto nuevo y, después de que se cierren todas las ventanas, lo instala. Una vez instalados, se actualizan todos los campos del manifiesto nuevo, excepto icons.

¿Qué propiedades activarán una actualización?

  • name
  • short_name
  • display (consulta a continuación)
  • scope
  • shortcuts
  • start_url
  • theme_color
  • file_handlers

¿Qué sucede cuando se actualiza el campo display?

Si actualizas el modo de visualización de tu app de browser a standalone, los usuarios existentes no tendrán sus apps abiertas en una ventana después de la actualización. Hay dos parámetros de configuración de visualización para una app web: el del manifiesto (que tú controlas) y el de la pestaña de la ventana o el navegador que controla el usuario. Siempre se respeta la preferencia del usuario.

Cómo probar las actualizaciones de manifiesto

La página chrome://web-app-internals (disponible en Chrome 85 o versiones posteriores) incluye información detallada sobre todas las AWP instaladas en el dispositivo y puede ayudarte a comprender cuándo se actualizó el manifiesto por última vez, con qué frecuencia se actualiza y mucho más.

Para forzar a Chrome a buscar un manifiesto actualizado de forma manual, puedes iniciar Chrome con la marca de línea de comandos --disable-manifest-update-throttle o reiniciar Chrome (usa about://restart). Esto restablece el temporizador para que Chrome busque un manifiesto actualizado la próxima vez que se inicie la AWP. Luego, inicia la AWP. Después de cerrar la AWP, esta debería actualizarse con las nuevas propiedades del manifiesto.

Referencias

Actualizaciones en Chrome para Android

Cuando se inicia la AWP, Chrome determina la última vez que se verificó el manifiesto local en busca de cambios. Si no se verificó el manifiesto en las últimas 24 horas, Chrome programará una solicitud de red para el manifiesto y, luego, lo comparará con la copia local.

Si cambian algunas propiedades del manifiesto (consulta la lista a continuación), Chrome pone en cola el manifiesto nuevo y, después de que se cierren todas las ventanas de la AWP, el dispositivo esté conectado y conectado a Wi-Fi, Chrome solicita un WebAPK actualizado del servidor. Una vez que se actualizan, se usan todos los campos del manifiesto nuevo.

¿Qué propiedades activarán una actualización?

  • name
  • short_name
  • icons
  • background_color
  • display
  • orientation
  • scope
  • shortcuts
  • start_url
  • theme_color
  • web_share_target

Si Chrome no puede obtener un manifiesto actualizado del servidor, es posible que aumente el tiempo entre las verificaciones a 30 días.

Cómo probar las actualizaciones de manifiesto

La página about://webapks incluye información detallada sobre todos los PWAs instalados en el dispositivo y puede indicarte cuándo se actualizó el manifiesto por última vez, con qué frecuencia se actualiza y mucho más.

Para programar una actualización del manifiesto de forma manual, anula el temporizador y el manifiesto local. Para ello, haz lo siguiente:

  1. Enchufa el dispositivo y asegúrate de que esté conectado a una red Wi-Fi.
  2. Usa el administrador de tareas de Android para cerrar la AWP y, luego, usa el panel de apps en la configuración de Android para forzar la detención de la AWP.
  3. En Chrome, abre about://webapks y haz clic en el botón "Actualizar" de la app web progresiva. El estado "Update Status" debería cambiar a "Pending".
  4. Inicia la AWP y verifica que se cargue correctamente.
  5. Usa el administrador de tareas de Android para cerrar la AWP y, luego, usa el panel de la app en la configuración de Android para forzar la detención de la AWP.

La AWP suele actualizarse en unos minutos. Una vez que se complete la actualización, el estado "Update Status" debería cambiar a "Successful".

Referencias