web-dev-qa-db-fra.com

Safari ne peut pas ouvrir la page car l'adresse n'est pas valide pour Google Maps sur iPad.

Nous avons un lien vers Google Maps pour obtenir des instructions en utilisant uniquement le format normal de l'URL de Google Maps: https://www.google.com/maps/dir/Current+Location/38.8992,-77.0482 .

Cela fonctionne bien sur Google Chrome et les autres navigateurs ne semblent pas avoir ce problème non plus, mais de toute façon sur l'iPad avec OS 8.1.3 utilisant le navigateur Safari, une alerte s'affiche avec le message "Safari ne peut pas ouvrir la page car l'adresse est invalide"

Est-ce que quelqu'un d'autre connaît ce problème?

La page semble toujours se charger, mais l'alerte apparaît et doit être supprimée, ce qui nuit à l'expérience utilisateur. Étant donné que le lien suit le standard de l'API Google Maps et semble fonctionner autrement, pourquoi et que peut-on faire pour empêcher cela?

De plus, quelque chose d'étrange s'est produit lorsqu'une fois que le lien a fonctionné plusieurs fois, le message ne s'affiche plus lorsque l'utilisateur est dirigé vers la page. Cependant, après avoir effacé l'historique et les données du navigateur Safari sur iPad, le problème refait surface.

5
Kevin

Si quelqu'un d'autre est arrivé ici mais n'a pas eu cette erreur à cause d'un lien Google Maps, regardez tout JS que vous avez écouté l'événement click du lien.

Dans mon cas, j’avais découvert qu’un développeur précédent avait ajouté un 

e.preventDefault();

à l'événement click.

1
Adam Grant

Il convient de noter que - en tant que développeur PhoneGap -, j'ai vérifié que les données GPS de l'iOS semblaient être de meilleure qualité que sur le téléphone Android ou sur un ordinateur portable HP. Le nombre de chiffres de précision sur l'iPad est considérablement plus long que celui disponible sur d'autres plates-formes.

Il se peut que lorsque iOS pousse autant de chiffres de précision que son serveur considère cela comme une erreur. Cette discussion semble suggérer que Google éliminera une précision inutile, mais il est possible qu'une récente mise à jour de Google Maps suffoque à l'excès.

Notez également que si votre téléphone est configuré pour une langue autre que l'anglais, l'API Google s'attend à ce que le mot dans cette langue soit "actuel", par exemple "votre + emplacement" en français.

0