web-dev-qa-db-fra.com

Après la mise à niveau vers l'application Web iOS 11.3, l'affichage en plein écran n'est pas compatible avec les applications Apple-mobile-web-app

J'ai une application web qui contient la méta

<meta name="Apple-mobile-web-app-capable" content="yes">

Avant iOS 11.3, une fois ajouté à l'écran d'accueil, il s'ouvrirait comme une application autonome sans la barre de navigation. 

Après 11.3, il s'ouvre maintenant avec la barre de navigation dans le navigateur.

7
gae123

Après des heures de dépannage, j’ai trouvé ce qui suit qui pourrait être utile aux autres. 

Pour la compatibilité Android/Chrome, mon fichier html comportait déjà les éléments suivants:

<link rel="manifest" href="/manifest.json">

Le fichier manifest.json ne contenait aucune entrée "display": "standalone". Il ne contenait que des icônes et un nom. Il semble qu'avant 11.3, Safari ignorait le fichier, mais il est maintenant pris en compte et prime sur la balise Meta Apple-mobile-web-app-capable. Puisque le code par défaut pour display: est browser , l'application a été ouverte dans un navigateur avec une barre de navigation.

Lorsque j'ai ajouté la ligne "display": "standalone" dans le fichier manifeste, le problème a disparu.

10
gae123

J'ai juste couru dans ceci aussi. @ gae123 a raison sur le fichier manifest.json. Vous pouvez également essayer de supprimer les balises méta en conflit spécifiques à Apple qui peuvent être vues ici: Apple Doc . J'ai également constaté que "afficher": "plein écran" dans le JSON était ce qu'il fallait, votre kilométrage peut varier.

1
Ross