Um die Richtigkeit der Daten und konsistente Aggregationen zu gewährleisten, wird in der Google Health API die Art und Weise, wie Nutzeraktivitäten gemeldet werden, modernisiert. Mit der Einführung von true zeros und on-wrist filtering können Sie mithilfe der API genau zwischen Zeiträumen unterscheiden, in denen ein Nutzer sich nicht bewegt hat, und Zeiträumen, in denen er sein Gerät nicht getragen hat.
Wahre Nullen
Ein echter Nullwert ist ein expliziter Datenpunkt, der angibt, dass ein Nutzer sein Gerät getragen und aktiv getrackt hat, aber für einen bestimmten Messwert den Wert „0“ aufgezeichnet hat. Ein Nutzer kann beispielsweise in einem 1-Minuten-Intervall 0 Schritte oder 0 Kilometer aufzeichnen, obwohl er sein Gerät trägt.
In der Vergangenheit waren fehlende Daten mehrdeutig. Das kann bedeuten, dass der Nutzer sich nicht bewegt hat oder dass das Gerät nicht am Handgelenk getragen wurde. Die API löst dieses Problem, indem sie explizit einen Wert von 0 speichert und zurückgibt, wenn das Gerät getragen wird, aber inaktiv ist. So können Sie deutlich zwischen Zeiträumen, in denen die Smartwatch getragen wurde, und fehlenden Daten unterscheiden.
Filtern am Handgelenk
Bei der Filterung am Handgelenk wird ermittelt, ob ein Nutzer sein Gerät tatsächlich trägt. So kann die API irrelevante Daten herausfiltern, z. B. „Phantom“-Schritte, die aufgrund von Fahrzeugvibrationen aufgezeichnet wurden, während sich ein Gerät in einer Tasche befand.
Unterstützte Datentypen
Die folgenden Datentypen unterstützen das Verhalten bei „Wahrer Null“ und die Filterung am Handgelenk:
- Höhe
- Entfernung
- Stockwerke
- Schritte
- Kalorien insgesamt
Auswirkungen auf Ihre Anwendung
Durch die Implementierung von echten Nullen wird die Genauigkeit der Interpretation von Datenlücken und der Berechnung von Messwerten wie Tagesdurchschnitten verbessert.
Listen- und Rollup-Verhalten
Standardmäßig gibt die Google Health API nur Daten vom Handgelenk für die folgenden Datentypen zurück:
- Listenvorgänge:Gibt Datenpunkte nur für Zeiträume zurück, in denen das Gerät getragen wurde. Lücken in der Liste deuten darauf hin, dass das Gerät nicht am Handgelenk getragen wurde oder keine Synchronisierung stattgefunden hat.
- Zusammenfassende Vorgänge:Eine Null in der Antwort bedeutet eine echte Null (der Nutzer hat das Gerät getragen, sich aber nicht bewegt). Wenn ein Tracker in einem bestimmten Intervall nicht getragen wurde, gibt die API keine Daten für dieses zusammenfassende Zeitfenster zurück.
Vergleich mit der Fitbit Web API
Die Fitbit Web API hat oft Daten, einschließlich Nullen, zurückgegeben, auch wenn kein Tracker getragen wurde. Die Google Health API bietet eine genauere Darstellung von Bewegungen.
| Funktion | Fitbit Web API | Google Health API |
|---|---|---|
| Unklarheit bei Inaktivität | Fehlende Daten können auf Inaktivität oder darauf hinweisen, dass das Gerät nicht am Handgelenk getragen wurde. | Echte Nullen weisen explizit auf Inaktivität beim Tragen hin. |
| Datenlücken | Bei Datenlücken könnte standardmäßig ein UTC-Offset verwendet werden. | Durch die explizite Speicherung werden Probleme mit Zeitzonen und zivilen Uhrzeiten behoben. |
| Filtern | Begrenzte Filterung auf dem Handgelenk | Die strenge Filterung am Handgelenk sorgt für physiologische Genauigkeit. |