web-dev-qa-db-fra.com

Futur de l'API Google Location History

Google retirera bientôt Latitude, ainsi que l'API de Latitude. Mais ils disent sur leur blog que l'historique des positions sera toujours stocké et que les utilisateurs pourront accéder à leur historique sur le tableau de bord de l'historique des positions de Google Maps. Savez-vous s'il y aura une API pour recevoir cet historique de localisation, comme c'était le cas pour Google Latitude?

36
Kuba Orlik

J'ai découvert que je peux charger dynamiquement mon historique de localisation pour n'importe quelle date en utilisant l'url suivante:

https://maps.google.com/locationhistory/b/0/kml?startTime=1373666400000&endTime=13737528000

en modifiant les horodatages dans les paramètres "startTime" et "endTime". Malheureusement, il est en .kml et aucune donnée de granularité n'est incluse. Allez, Google - Latitude a des utilisateurs dévoués qui se relayent quotidiennement, ne le tuez pas :(

19
Kuba Orlik

Si vous souhaitez que les données soient JSON avec précision et pas seulement les emplacements, vous pouvez simplement faire la même demande que le site Web. En regardant l'inspecteur, il montre qu'il fait une demande à https://maps.google.com/locationhistory/b/0/apps/pvjson?t= . Vous pouvez rejouer la même demande avec cURL (ou tout autre moyen de faire une POST).

curl 'https://maps.google.com/locationhistory/b/0/apps/pvjson?t=0' -H 'Origin: https://maps.google.com' -H 'accept-encoding: gzip,deflate,sdch' -H 'x-manualheader: [SOME STRING]' -H 'accept-language: en-GB,en;q=0.8,en-US;q=0.6,de;q=0.4,pt;q=0.2' -H 'cookie: GDSESS=[COOKIE DATA]' -H 'x-client-data: [ANOTHER STRING]' -H 'user-agent: [UA STRING]' -H 'content-type: application/x-www-form-urlencoded;charset=UTF-8' -H 'accept: */*' -H 'cache-control: max-age=0' -H 'referer: https://maps.google.com/locationhistory/b/0' -H 'dnt: 1' --data '[null,[BEGIN],[END],true]' --compressed

J'ai omis mes données de cookies privés et certains détails (dans [..]) mais vous pouvez google chrome demander à le générer pour vous dans la console développeur (clic droit sur demande -> copier en cURL). Il suffit d'adapter les heures de début et de fin et de télécharger votre emplacement histoire en JSON. Cependant, vous devez télécharger des plages de quelques jours et pas tout à la fois. Je vais laisser cela comme un exercice pour le lecteur.

14
dominik

Vous pouvez également télécharger les données depuis Google Takeout. Je sais que ce n'est pas une API en soi, mais même une importation manuelle est probablement meilleure que rien.

https://google.com/takeout/

10
sjcaged

Moi aussi, je recherche une solution alternative pour récupérer mon emplacement de Google.

Voici quelques faits:

  • Latitude sera remplacé par le partage de position sur Google+
  • Les appareils Android continueront de signaler les données de localisation à Google
  • Latitude sera supprimée (API, amis, site web ...)

Si les appareils envoient toujours des données de localisation, Google devrait nous fournir une API pour récupérer ces données.

Je l'ai étudié et mon emplacement est indiqué sur mon profil G +, mais aucune information sur la granularité ou l'horodatage. Il dit simplement "Emplacement actuel: [ville géocodée]". Le géocodage inversé de cette adresse n'est pas très précis. Si je clique sur l'adresse, Google Maps s'ouvre dans un nouvel onglet avec des coordonnées qui semblent assez précises. Donc, si mon emplacement est sur G +, je devrais pouvoir l'obtenir via l'API G +, non?

Bien..

La seule chose que j'ai pu trouver était la suivante:

https://developers.google.com/+/api/latest/people

  "currentLocation": string,

Comme vous pouvez le voir, les données d'emplacement sont renvoyées sous forme de chaîne. Je ne l'ai pas encore essayé, mais je parierais de l'argent qu'il retournerait le même que sur mon profil, juste le nom de la ville, mais pas plus précis que cela.

En ce moment, ça craint. Je souhaite obtenir mes informations de localisation, si l'appareil les envoie déjà. L'installation d'une application tierce sur mon téléphone pour alimenter ma position sur un autre service est redondante. Et n'oublions pas la décharge supplémentaire de la batterie et l'utilisation des données mobiles.

L'étape logique serait de mettre toutes les fonctionnalités de latitude sur Google+.

On verra, j'en doute.

À l'heure actuelle, il semble qu'ils se nourrissent de notre vie privée sans que nous ayons le moindre contrôle ou aperçu. :(

8
jean