Wie lade ich Schrittanzahldaten aus Google Fitness REST API ab?

9

Seitdem ich die Google Fit App auf meinem Nexus 5 installiert habe, habe ich meine Schrittzahl und die verbrachte Zeit gemessen. Ich möchte diese Informationen über die Google Fitness REST API ( Dokumentation ) abrufen, aber ich kann nicht herausfinden, wie um irgendwelche Daten von der REST API zu bekommen.

Ich habe den OAuth 2.0-Spielplatz benutzt, um DataSources erfolgreich aufzulisten, aber keines der Beispiele, die ich ausprobiert habe, hat irgendwelche Fitness-Daten zurückgegeben. Ich habe das Gefühl, dass ich etwas Ähnliches wie DataReadRequest vom ( Android-Gerät) verwenden muss SDK ), aber ich baue keine Android App - ich möchte nur auf Fitnessdaten zugreifen, die bereits in der Google Fit App gespeichert sind.

Ist es überhaupt möglich, die von der Google Fit App gesammelten Daten zu erhalten? Wenn ja, wie kann ich Schrittzähldaten mithilfe der REST-API lesen und aggregieren?

    
Chornsby 26.11.2014, 20:51
quelle

3 Antworten

5

Es stellt sich heraus, dass die Antwort in den Dokumenten danach liegt alle. Hier ist das Format der Anfrage.

GET https://www.googleapis.com/fitness/v1/users/{userId}/dataSources/{dataSourceId}/datasets/{datasetId}

Der einzige unterstützte Wert für {userId} ist me (mit Authentifizierung).

Mögliche Werte für {dataSourceId} sind verfügbar, wenn Sie eine andere Anfrage ausführen .

Das bisschen, was ich verpasst habe, war, dass {datasetId} nicht wirklich eine ID ist, sondern tatsächlich, wo du den Zeitraum definierst, an dem du interessiert bist. Das Format für diese Variable ist {startTime}-{endTime} , wobei die Zeiten seit der Epoche in Nanosekunden liegen.

    
Chornsby 27.11.2014, 19:54
quelle
2

Ich konnte das über den google php-Client erreichen und bemerkte, dass sie sich anfügen ihre Anfangs- und Endzeiten für die GET -Anforderung mit zusätzlichen 0 - neun Infakten.

Verwenden Sie das gleiche GET -Aufforderungsformat wie in der obigen Antwort erwähnt:

%Vor%

Hier ist ein Beispiel mit dem Unix-Timestamp (php's time() Funktion verwendet dies)

%Vor%

Dies ist die Antwort, die ich bekomme:

%Vor%

Wenn Sie jedoch Ihre Start- und Endzeiten mit neun 0 s anhängen, fügen Sie Ihre GET -Anfragen ein und gestalten Ihre Anfrage wie folgt:

%Vor%

Es hat funktioniert - das ist die Antwort, die ich bekommen habe:

%Vor%

Die Antwort ist viel länger, aber ich habe es für diesen Beitrag gekürzt. Wenn Sie also den Parameter datasets an die Anfrage übergeben:

1470475368-1471080168 funktioniert nicht, aber 1470475368000000000-1471080168000000000 wird.

Das hat den Trick für mich gemacht, hofft es hilft jemandem!

    
XanT 13.08.2016 11:31
quelle
0

Ich habe post-Methode mit unter URL & amp versucht; Karosserie. Dies funktioniert, bitte überprüfen Sie auch Inline-Kommentare.

Verwenden Sie die URL: Ссылка Methode: POST Körper:

%Vor%     
Rajendra Singh Nagar 01.09.2017 09:23
quelle

Tags und Links