Users.dataSources

Definition einer eindeutigen Quelle für Sensordaten. Über Datenquellen können Rohdaten bereitgestellt werden, die von Hardwaresensoren auf lokalen oder Begleitgeräten stammen. Sie können auch abgeleitete Daten freigeben, die durch Transformieren oder Zusammenführen anderer Datenquellen erstellt wurden. Für denselben Datentyp können mehrere Datenquellen vorhanden sein. Jeder Datenpunkt, der in diesen Dienst eingefügt oder aus diesem gelesen wird, ist mit einer Datenquelle verknüpft.

Die Datenquelle enthält genügend Informationen, um die Daten eindeutig zu identifizieren, einschließlich des Hardwaregeräts und der Anwendung, über die die Daten erhoben und/oder transformiert wurden. Außerdem enthält er nützliche Metadaten, z. B. die Hardware- und Anwendungsversionen sowie den Gerätetyp.

Jede Datenquelle erzeugt einen eindeutigen Datenstream mit einer eindeutigen Kennung. Nicht alle Änderungen an der Datenquelle wirken sich auf die Stream-ID aus. Daher können Daten, die von aktualisierten Versionen derselben Anwendung bzw. desselben Geräts erhoben werden, weiterhin als zum selben Datenstream gehörend betrachtet werden.

Am Ende dieser Seite finden Sie eine Liste der Methoden für diese Ressource.

Ressourcendarstellungen

{
  "dataStreamId": string,
  "name": string,
  "dataStreamName": string,
  "type": string,
  "dataType": {
    "name": string,
    "field": [
      {
        "name": string,
        "format": string,
        "optional": boolean
      }
    ]
  },
  "device": {
    "uid": string,
    "type": string,
    "version": string,
    "model": string,
    "manufacturer": string
  },
  "application": {
    "packageName": string,
    "version": string,
    "detailsUrl": string,
    "name": string
  },
  "dataQualityStandard": [
    string
  ]
}
Property-Name Wert Beschreibung Hinweise
application nested object Informationen zu einer Anwendung, die Sensordaten in die Plattform einspeist.
application.detailsUrl string Ein optionaler URI, mit dem eine Verknüpfung zurück zur Anwendung hergestellt werden kann.
application.name string Der Name dieser Anwendung. Dies ist für REST-Clients erforderlich, die Eindeutigkeit dieses Namens wird jedoch nicht erzwungen. Sie ist für andere Entwickler gedacht, die wissen möchten, mit welcher REST eine Anwendung oder Datenquelle erstellt wurde.
application.packageName string Paketname für diese Anwendung. Sie wird als eindeutige Kennung verwendet, wenn sie von Android-Anwendungen erstellt wird, kann aber nicht von REST-Clients angegeben werden. Bei REST-Clients wird die Nummer des Entwicklerprojekts in den Datenstream-IDs der Datenquelle anstatt im packageName angezeigt.
application.version string Version der Anwendung. Sie sollten dieses Feld immer dann aktualisieren, wenn sich die Anwendung so ändert, dass sich dies auf die Berechnung der Daten auswirkt.
dataQualityStandard[] list BITTE DIESES FELD NICHT AUSFÜLLEN. Es wird nie in Antworten der Plattform eingefügt und in Abfragen ignoriert. Er wird in einer zukünftigen Version vollständig entfernt.
dataStreamId string Eine eindeutige Kennung für den von dieser Datenquelle erstellten Datenstream. Die Kennung umfasst:

  • Hersteller, Modell und Seriennummer (UID) des physischen Geräts
  • Der Paketname oder -name der Anwendung. Der Paketname wird verwendet, wenn die Datenquelle von einer Android-App erstellt wurde. Die Entwicklerprojektnummer wird verwendet, wenn die Datenquelle von einem REST-Client erstellt wurde.
  • Der Typ der Datenquelle.
  • Name des Streams der Datenquelle.
Nicht alle Attribute der Datenquelle werden als Teil der Stream-ID verwendet. Insbesondere die Version der Hardware bzw. der Anwendung wird nicht verwendet. So bleibt durch Versionsupdates immer derselbe Stream erhalten. Das bedeutet auch, dass zwei DataSource-Objekte denselben Datenstream darstellen können, selbst wenn sie nicht gleich sind.

Die Datenstream-ID, die von einer Android-App erstellt wird, hat folgendes Format: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName

Das genaue Format der von einem REST-Client erstellten Datenstream-ID ist: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName

Wenn keine der optionalen Felder für die Datenstream-ID vorhanden sind, werden sie in der Datenstream-ID ausgelassen. Die mindestens funktionsfähige Datenstream-ID wäre: type:dataType.name:developer Projektnummer

Schließlich werden die Entwicklerprojektnummer und die Geräte-UID verschleiert, wenn sie von einem REST- oder Android-Client gelesen werden, der die Datenquelle nicht erstellt hat. Nur dem Ersteller der Datenquelle wird die Entwicklerprojektnummer in klarer und normaler Form angezeigt. Das bedeutet, dass einem Client ein anderer Satz von „data_stream_ids“ angezeigt wird als einem anderen Client mit anderen Anmeldedaten.

dataStreamName string Anhand des Streamnamens wird diese Datenquelle im Vergleich zu anderen Datenquellen desselben Typs vom selben zugrunde liegenden Ersteller eindeutig identifiziert. Die Festlegung des Streamnamens ist optional, sollte aber immer dann erfolgen, wenn eine Anwendung zwei Streams für denselben Datentyp verfügbar macht oder ein Gerät über zwei gleichwertige Sensoren verfügt.
dataType nested object Der Datentyp definiert das Schema für einen Datenstrom, der von der Fitness API erfasst, in diese eingefügt oder von ihr abgefragt wird.
dataType.field[] list Ein Feld stellt eine Dimension eines Datentyps dar.
dataType.field[].format string Die verschiedenen unterstützten Formate für jedes Feld in einem Datentyp.

Zulässige Werte sind: <ph type="x-smartling-placeholder">
    </ph>
  • blob
  • floatList
  • floatPoint
  • integer
  • integerList
  • map
  • string
dataType.field[].name string Definiert den Namen und das Format von Daten. Im Gegensatz zu Datentypnamen werden Feldnamen nicht mit einem Namespace versehen und müssen nur innerhalb des Datentyps eindeutig sein.
dataType.field[].optional boolean
dataType.name string Jeder Datentyp hat einen eindeutigen Namespace-Namen. Alle Datentypen im Namespace „com.google“ werden im Rahmen der Plattform gemeinsam genutzt.
device nested object Darstellung eines integrierten Geräts (z. B. eines Smartphones oder Wearables), das Sensoren halten kann
device.manufacturer string Hersteller des Produkts bzw. der Hardware
device.model string Für Endnutzer sichtbarer Modellname des Geräts.
device.type string Eine Konstante, die den Gerätetyp darstellt.

Zulässige Werte sind: <ph type="x-smartling-placeholder">
    </ph>
  • chestStrap
  • headMounted
  • phone
  • scale
  • smartDisplay
  • tablet
  • unknown
  • watch
device.uid string Die Seriennummer oder eine andere eindeutige ID für die Hardware. Dieses Feld wird verschleiert, wenn es von einem REST- oder Android-Client gelesen wird, der die Datenquelle nicht erstellt hat. Nur der Ersteller der Datenquelle kann das UID-Feld klar und normal sehen.

Die Verschleierung wahrt die Gleichheit. also bei zwei IDs, wenn id1 == id2, obfuscated(id1) == obfuscated(id2).

device.version string Versionsstring für die Hardware/Software des Geräts.
name string Ein für den Endnutzer sichtbarer Name dieser Datenquelle.
type string Eine Konstante, die den Typ dieser Datenquelle beschreibt. Gibt an, ob diese Datenquelle Rohdaten oder abgeleitete Daten produziert.

Zulässige Werte sind: <ph type="x-smartling-placeholder">
    </ph>
  • derived
  • raw

Methoden

erstellen
Es wird eine neue Datenquelle erstellt, die für alle zugehörigen Datenquellen eindeutig ist für diesen Nutzer.

Eine Datenquelle ist eine einzigartige Quelle von Sensordaten. Über Datenquellen Rohdaten, die von Hardwaresensoren auf lokalen oder Companion-Geräten stammen. Sie kann auch abgeleitete Daten verfügbar machen, die durch Transformieren oder Zusammenführen anderer Daten erstellt wurden Quellen. Für denselben Datentyp können mehrere Datenquellen vorhanden sein. Alle Daten in jedem Dataset, das in die Fitness API eingefügt oder daraus gelesen wird, hat ein zugehöriger Datenquelle aus.

Jede Datenquelle erzeugt einen eindeutigen Stream von Dataset-Aktualisierungen, wobei eindeutige Kennung der Datenquelle. Nicht alle Änderungen an der Datenquelle wirken sich auf Datenstream-ID, sodass die Daten, die von aktualisierten Versionen derselben Anwendung/Gerät kann dennoch als zu denselben Daten gehörend betrachtet werden Quelle.

Datenquellen werden anhand eines vom Server generierten Strings identifiziert. auf den Inhalt der erstellten Quelle. Das dataStreamId darf beim Aufrufen dieser Methode nicht festgelegt werden. Es werden automatisch vom Server im richtigen Format generiert. Wenn dataStreamId festgelegt ist, muss sie dem Format entsprechen, die der Server generiert. Dieses Format ist eine Kombination aus einigen Feldern aus dem Datenquelle und hat eine bestimmte Reihenfolge. Stimmen sie nicht überein, mit einer Fehlermeldung fehl.

Angeben eines Datentyps, der kein bekannter Typ ist (beginnend mit "com.google.") erstellt eine Datenquelle mit einem benutzerdefinierten Datentyp. Benutzerdefinierte Datentypen können nur von der Anwendung gelesen werden, in der sie erstellt wurden. Benutzerdefinierte Datentypen wurden eingestellt. Standarddatentypen verwenden .

Zusätzlich zu den Datenquellenfeldern, die in der Datenquellen-ID enthalten sind, enthält das Feld Nummer des Entwicklerprojekts, die beim Erstellen der Daten authentifiziert wird Quelle enthalten ist. Diese Entwicklerprojektnummer wird beim Lesen verschleiert die öffentliche Datentypen lesen.
Delete
Löscht die angegebene Datenquelle. Die Anfrage schlägt fehl, wenn die Daten Quelle alle Datenpunkte enthält.
get
Gibt die angegebene Datenquelle zurück.
list
Listet mithilfe von OAuth alle Datenquellen auf, die für den Entwickler sichtbar sind Bereiche angegeben. Die Liste ist nicht vollständig. kann der Nutzer private Datenquellen, die nur für andere Entwickler sichtbar sind, oder Aufrufe über andere Umfänge.
Update
Aktualisiert die angegebene Datenquelle. Das dataStreamId, dataType, type, dataStreamName und device-Properties mit Ausnahme von version, kann nicht geändert werden.

Datenquellen werden durch ihre dataStreamId identifiziert.