Ihre App kann Daten zum Blutzuckerspiegel aufzeichnen, indem sie in den Datentyp com.google.blood_glucose schreibt. Bei diesem Datentyp steht jeder Datenpunkt für einen einzelnen sofortigen Blutzuckermesswert. Der Datenpunkt enthält Felder für die Blutzuckerkonzentration, zeitliche Beziehungen zu Mahlzeiten und Schlaf sowie die Quelle der gemessenen Probe. Alle Felder mit Ausnahme der Blutzuckerkonzentration sind optional.
- Die Blutzuckerkonzentration wird in mmol/L gemessen (1 mmol/L entspricht 18 mg/dL).
- Falls angegeben, muss die zeitliche Beziehung zur Mahlzeit einen der in
FIELD_TEMPORAL_RELATION_TO_MEALaufgeführten Werte haben. - Der Mahlzeittyp muss einen der in
FIELD_MEAL_TYPEaufgeführten Werte haben. Wenn der Mahlzeittyp nicht bekannt ist, verwenden SieMEAL_TYPE_UNKNOWN. - Falls angegeben, muss die zeitliche Beziehung zum Schlaf einen der in
FIELD_TEMPORAL_RELATION_TO_SLEEPaufgeführten Werte haben. - Falls angegeben, muss die Quelle der Blutzuckerprobe einen der in
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCEaufgeführten Werte haben.
Datenquelle erstellen
Android
Wenn Sie einen Blutzucker-Datenpunkt schreiben möchten, erstellen Sie ein neues DataSource von TYPE_BLOOD_GLUCOSE, wie im folgenden Beispiel gezeigt:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
Wenn Sie einen Blutzucker-Datenpunkt schreiben möchten, erstellen Sie eine neue Datenquelle.
HTTP-Methode
POST
Anfrage-URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
Anfragetext
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
Antwort
Wenn die Datenquelle erfolgreich erstellt wurde, enthält die Antwort den Statuscode 200 OK. Der Antworttext enthält eine JSON-Darstellung der Datenquelle, einschließlich des Attributs datasource.dataStreamId, das Sie als Datenquellen-ID für nachfolgende Anfragen verwenden können.
CURL-Befehl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request POST \ --header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-ds.json \ https://www.googleapis.com/fitness/v1/users/me/dataSources
Daten hinzufügen
Android
Wenn Sie der oben erstellten Quelle Daten hinzufügen möchten, erstellen Sie einen Datenpunkt für diese Datenquelle, der mit der History API eingefügt werden kann:
val bloodGlucose = DataPoint.builder(bloodGlucoseSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_BLOOD_GLUCOSE_LEVEL, 5.0f) // 90 mg/dL
.setField(FIELD_TEMPORAL_RELATION_TO_MEAL, FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL)
.setField(FIELD_MEAL_TYPE, MEAL_TYPE_BREAKFAST)
.setField(FIELD_TEMPORAL_RELATION_TO_SLEEP, TEMPORAL_RELATION_TO_SLEEP_ON_WAKING)
.setField(FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE, BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD)
.build()
REST
In diesem Beispiel wird gezeigt, wie du mit der oben erstellten Datenquelle Daten zum Blutzuckerspiegel hinzufügst.
HTTP-Methode
PATCH
Anfrage-URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
Anfragetext
Zur besseren Übersicht ist der unten gezeigte JSON-Text mit Kommentaren versehen, um die Verwendung von Konstanten für Gesundheitsfelder zu veranschaulichen. Obwohl die Fit API derzeit Kommentare ignoriert, sollten Sie diese aus Ihrem Code entfernen, da JSON Kommentare offiziell nicht unterstützt.
{
"minStartTimeNs": 1574159699023000000,
"maxEndTimeNs": 1574159699023000000,
"dataSourceId": "datasource.dataStreamId",
"point": [
{
"startTimeNanos": 1574159699023000000,
"endTimeNanos": 1574159699023000000,
"dataTypeName": "com.google.blood_glucose",
"value": [
{
// Blood glucose level, 90 mg/dL
"fpVal": 5.0
},
{
// FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL
"intVal": 3
},
{
// MEAL_TYPE_BREAKFAST
"intVal": 1
},
{
// TEMPORAL_RELATION_TO_SLEEP_ON_WAKING
"intVal": 3
},
{
// BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD
"intVal": 2
}
]
}
]
}Antwort
Wenn die Blutzuckerdaten erfolgreich hinzugefügt wurden, ist die Antwort ein 200 OK-Statuscode. Der Antworttext enthält eine JSON-Darstellung der hinzugefügten Blutzuckerdaten.
CURL-Befehl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request PATCH \
--header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-data.json \
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000