Est la balise GEO pour les codes QR lat / long ou long / lat

10

Je viens de découvrir que vous pouvez ajouter un composant géographique à un code QR .

Je viens également de découvrir que vous pouvez en créer un sur l'API Google Chart en utilisant ceci:

https://chart.googleapis.com/chart?cht=qr&chs=400x400&chl=geo:30.3,-97.6

Cela me crée un code QR qui ressemble à ceci:

entrez la description de l'image ici

Jusqu'ici tout va bien. Et quand je l'ai lu sur mon iPhone en utilisant l'application QR Code Reader, il m'envoie sur une carte Google au bon endroit (Austin, TX).

Le truc, c'est que la chaîne utilisée pour créer ceci utilise lat / long. Si j'écrivais les mêmes données dans un fichier KML, il s'attendrait à long / lat.

La question est donc de savoir quelles spécifications utiliser pour les codes QR:

  1. La spécification QR est-elle réellement lat / long?
  2. L'API Google Chart est-elle mélangée?
  3. L'application QR Reader se trompe-t-elle?

Mon argent est en panne sur le lecteur QR - mais je ne suis pas sûr. Quelqu'un at-il une réponse définitive?

Mark Ireland
la source

Réponses:

5

Si cela fonctionne, alors je ne sais pas comment tout peut être gâché! Mais je pense que je sais ce que tu veux dire.

Le principal problème est que QR code le texte, et c'est tout. La façon dont une application interprète ce texte est la clé. L' API ZXing pour Android répertorie brièvement le codage des "informations géographiques" comme lat / long, et cela est confirmé lorsque je numérise le QR que vous avez fourni - cela m'amène à Austin, au Texas.

J'ai fouillé un peu (mais pas de manière exhaustive) et je ne trouve aucune documentation à ce sujet à part le lien ci-dessus - tous les autres résultats mènent finalement à cette page. Un peu plus de recherche peut faire apparaître une liste de diffusion ou un forum de discussion où la spécification d'origine a été discutée.

Donc, le résultat est, en ce qui concerne geoles codes QR, lat / long est le "standard" et je serais surpris si cela changeait à l'avenir. Je pourrais envisager un autre encodage en utilisant un tag différent qui était long / lat, en effet il est suffisamment flexible pour que vous puissiez le développer pour votre application, mais vous devrez vraiment en informer les gens si vous voulez que d'autres applications l'utilisent.

Voici un code QR Google Chart avec un exemple d'encodage long / lat, notez que la lonlatbalise est une de mes propres inventions:

https://chart.googleapis.com/chart?cht=qr&chs=400x400&chl=lonlat:-97.6,30.3

entrez la description de l'image ici

Comme prévu, mon téléphone Android le reconnaît comme un URI, mais ne sait pas quoi en faire.

MerseyViking
la source
Merci. Je suppose que la question se résumait à: Lat / Long est-il la norme pour QR? Je ne faisais tout simplement pas confiance au lecteur QR que j'ai et je voulais une sorte de confirmation. Il semble que vous ayez répondu à cette question pour moi.
Mark Ireland
2

Pour Google Maps, l'URL peut être analysée à l'aide de maps.google

entrez la description de l'image ici

http://chart.apis.google.com/chart?chs=200x200&cht=qr&chld=H&chl=http%3A%2F%2Fmaps.google.com%2Fmaps%3Fq%3Dnyc%26hl%3Den%26sll%3D37.0625% 2C-95.677068% 26sspn% 3D43.172547% 2C93.076172% 26z% 3D11

Ajout de KML

Pour KML, il est public et lu via les serveurs Google pour validation afin de générer le code QR.

http://chart.apis.google.com/chart?chs=200x200&cht=qr&chld=H&chl=http%3A%2F%2Fmaps.google.com%2Fmaps%3Fq%3Dhttp%3A%252F%252Fwww.nycbikemaps.com% 252Ffiles% 252FNYC_BICYCLE_MAP.kml% 26hl% 3Den% 26z% 3D10

entrez la description de l'image ici

Créé à l'aide du nouvel assistant graphique

http://code.google.com/apis/chart/image/docs/chart_wizard.html

Mapperz
la source
Sensationnel. Ce n'était pas vraiment ce que je demandais, mais c'est très intéressant et quelque chose auquel je n'avais pas pensé. Merci!
Mark Ireland
1

En utilisant ZXing Generator où vous choisissez Lat, Long ou cliquez sur la carte, je vois le même résultat sur l'API graphique: http://chart.apis.google.com/chart?cht=qr&chs=230x230&chl=geo%3A63.27812271092345 % 2C18.709716796875 selon le wiki ZXing Informations géographiques :

Par exemple, pour coder le bureau de Google à New York, qui se trouve à 40,71872 degrés de latitude N, 73,98905 degrés de longitude O, à un point situé à 100 mètres au-dessus du bureau, on coderait "geo: 40.71872, -73.98905,100".

MathiasWestin
la source
Générateur utile. fyi celui que je regardais également était: mobilefish.com/services/qrcode/qrcode.php
Mark Ireland