Definition einer eindeutigen Quelle von Sensordaten. Datenquellen können Rohdaten, die von Hardwaresensoren auf lokalen oder Companion-Geräten stammen, verfügbar machen. Sie können auch abgeleitete Daten zur Verfügung stellen, 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, die die Daten erfasst und/oder transformiert hat. Außerdem enthält sie nützliche Metadaten, wie 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 erfasst werden, weiterhin zum selben Datenstream gehören.
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 zurück zur Anwendung verlinkt 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 wird anderen Entwicklern zur Verfügung gestellt, die ermitteln möchten, welche REST-Anwendung eine Anwendung oder Datenquelle erstellt hat. | |
application.packageName |
string |
Paketname für diese Anwendung. Er wird als eindeutige Kennung verwendet, wenn er von Android-Apps erstellt wird. Für REST-Clients kann er nicht angegeben werden. Bei REST-Clients wird die Entwicklerprojektnummer in den Datenquellen-Datenstream-IDs anstelle des Paketnamens widergespiegelt. | |
application.version |
string |
Version der Anwendung. Sie sollten dieses Feld immer dann aktualisieren, wenn sich die Anwendung auf eine Weise ändert, die sich auf die Berechnung der Daten auswirkt. | |
dataQualityStandard[] |
list |
DIESES FELD NICHT AUSFÜLLEN. Er wird in Antworten von der Plattform nie mit Daten gefüllt und in Abfragen ignoriert. Es wird in einer zukünftigen Version vollständig entfernt. | |
dataStreamId |
string |
Eine eindeutige Kennung für den Datenstream, der von dieser Datenquelle erzeugt wird. Die Kennung umfasst:
Die von einer Android-App erstellte Datenstream-ID hat folgendes Format: type:dataType.name Das genaue Format der von einem REST-Client erstellten Datenstream-ID lautet: type:dataType.name Wenn eines der optionalen Felder der Datenstream-ID fehlt, wird es in der Datenstream-ID weggelassen. Die minimale Vital-Datenstream-ID wäre: type:dataType.name:developer project number Die Nummer des Entwicklerprojekts und die Geräte-UID werden verschleiert, wenn sie von einem REST- oder Android-Client gelesen werden, der die Datenquelle nicht erstellt hat. Nur der Ersteller der Datenquelle sieht die Entwicklerprojektnummer klar und normal. Das bedeutet, dass ein Client einen anderen Satz von „data_stream_ids“ sieht als ein anderer Client mit anderen Anmeldedaten. |
|
dataStreamName |
string |
Anhand des Streamnamens wird diese Datenquelle unter anderen Datenquellen desselben Typs vom selben zugrunde liegenden Ersteller eindeutig identifiziert. Das Festlegen des Streamnamens ist optional, sollte aber erfolgen, wenn eine Anwendung zwei Streams für denselben Datentyp bereitstellt 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 sie 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:
|
|
dataType.field[].name |
string |
Definiert den Namen und das Format von Daten. Im Gegensatz zu Datentypnamen haben Feldnamen keinen Namespace 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 com.google-Namespace werden als Teil der Plattform freigegeben. | |
device |
nested object |
Darstellung eines integrierten Geräts (z. B. eines Smartphones oder eines Wearables), das Sensoren halten kann | |
device.manufacturer |
string |
Hersteller des Produkts/der Hardware. | |
device.model |
string |
Für den Endnutzer sichtbarer Modellname des Geräts. | |
device.type |
string |
Eine Konstante, die den Gerätetyp darstellt.
Zulässige Werte sind:
|
|
device.uid |
string |
Die Seriennummer oder eine andere eindeutige ID der 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 sieht das UID-Feld in normaler Form. Die Verschleierung bewahrt die Gleichheit auf, d. h. bei zwei IDs, wenn id1 == id2, verschleiert(id1) == verschleiert(id2). |
|
device.version |
string |
Versions-String für die Hardware/Software des Geräts. | |
name |
string |
Das ist ein für Endnutzer sichtbarer Name für diese Datenquelle. | |
type |
string |
Konstante, die den Typ dieser Datenquelle beschreibt. Gibt an, ob diese Datenquelle Roh- oder abgeleitete Daten liefert.
Zulässige Werte sind:
|
Methoden
- Erstellen
- Erstellt eine neue Datenquelle, die für alle Datenquellen dieses Nutzers eindeutig ist.
Eine Datenquelle ist eine einzigartige Quelle für Sensordaten. Datenquellen können Rohdaten bereitstellen, die von Hardwaresensoren auf lokalen oder Begleitgeräten stammen. Sie können auch abgeleitete Daten verfügbar machen, die durch Transformieren oder Zusammenführen anderer Datenquellen erstellt wurden. Für denselben Datentyp können mehrere Datenquellen vorhanden sein. Jeder Datenpunkt in jedem Dataset, der in die Fitness API eingefügt oder aus dieser gelesen wird, ist mit einer Datenquelle verknüpft.
Jede Datenquelle erzeugt einen eindeutigen Stream von Dataset-Aktualisierungen mit einer eindeutigen Datenquellen-ID. Nicht alle Änderungen an der Datenquelle wirken sich auf die Datenstream-ID aus. Daher können Daten, die von aktualisierten Versionen derselben Anwendung bzw. desselben Geräts erfasst werden, weiterhin zur selben Datenquelle gehören.
Datenquellen werden mithilfe eines vom Server generierten Strings identifiziert, basierend auf dem Inhalt der erstellten Quelle. Das FelddataStreamId
sollte beim Aufrufen dieser Methode nicht festgelegt werden. Sie wird vom Server automatisch mit dem richtigen Format generiert. WenndataStreamId
festgelegt ist, muss sie dem Format entsprechen, das vom Server generiert werden würde. Dieses Format ist eine Kombination aus mehreren Feldern aus der Datenquelle und hat eine bestimmte Reihenfolge. Wenn sie nicht übereinstimmt, schlägt die Anfrage fehl und ein Fehler wird angezeigt.
Wenn Sie einen Datentyp angeben, der kein bekannter Typ ist (beginnend mit „com.google.“), wird eine Datenquelle mit einem benutzerdefinierten Datentyp erstellt. Benutzerdefinierte Datentypen sind nur in der Anwendung lesbar, in der sie erstellt wurden. Benutzerdefinierte Datentypen wurden eingestellt. Verwenden Sie stattdessen Standarddatentypen.
Neben den Datenquellenfeldern in der Datenquellen-ID ist auch die Entwicklerprojektnummer enthalten, die beim Erstellen der Datenquelle authentifiziert wird. Diese Entwicklerprojektnummer wird verschleiert, wenn sie von einem anderen Entwickler gelesen wird, der öffentliche Datentypen liest. - delete
- Die angegebene Datenquelle wird gelöscht. Die Anfrage schlägt fehl, wenn die Datenquelle Datenpunkte enthält.
- get
- Gibt die angegebene Datenquelle zurück.
- list
- Listet unter Verwendung der angegebenen OAuth-Bereiche alle Datenquellen auf, die für den Entwickler sichtbar sind. Die Liste ist nicht vollständig. Der Nutzer kann private Datenquellen haben, die nur für andere Entwickler sichtbar sind, oder Aufrufe mit anderen Bereichen haben.
- Update
- Die angegebene Datenquelle wird aktualisiert. Die Attribute
dataStreamId
,dataType
,type
,dataStreamName
unddevice
mit Ausnahme vonversion
können nicht geändert werden.
Datenquellen sind über ihredataStreamId
gekennzeichnet.