Vorhandensein von Daten und tatsächliche Nullen

Um die Richtigkeit der Daten und konsistente Aggregationen zu gewährleisten, wird in der Google Health API die Art und Weise modernisiert, wie Nutzeraktivitäten gemeldet werden. 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.

Echte 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 wurde. Ein Nutzer kann beispielsweise in einem 1-Minuten-Intervall 0 Schritte oder 0 Kilometer aufzeichnen, obwohl er sein Gerät trägt.

Bisher war es nicht immer eindeutig, wenn Daten fehlten. 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.
    • Datenlücken:Lücken und fehlende Einträge in der Liste deuten darauf hin, dass das Gerät nicht am Handgelenk getragen wurde oder keine Synchronisierung stattgefunden hat.
    • Leere Datensätze:Datenpunkte, bei denen ein Nutzer das Gerät getragen hat, aber keine Aktivität aufgezeichnet wurde (eine echte Null), werden mit normalen dataSource- und Intervall- oder Zeitstempelinformationen zurückgegeben. Das messwertspezifische Feld (z. B. die count-Eigenschaft) wird jedoch ausgelassen. Diese sollten als Nullwerte interpretiert werden.
  • Rollup-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 Zeitraum nicht getragen wurde, gibt die API für dieses Rollup-Fenster keine Daten zurück.

Bei list-Vorgängen können aufeinanderfolgende Synchronisierungen verbundener Geräte auch zu sich überschneidenden Intervallen führen, wenn On-Device-Algorithmen die Rohdaten der Sensoren neu gruppieren. Weitere Informationen zum Umgang mit Intervallüberschneidungen finden Sie im Leitfaden zur Datenverwaltung.

Vergleich mit der Fitbit Web API

Die Fitbit Web API hat oft Daten zurückgegeben, einschließlich Nullen, 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 Datenlücken könnten standardmäßig auf UTC-Offsets zurückgeführt 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.