La tua app può registrare i dati sulla glicemia scrivendo nel
com.google.blood_glucose tipo di dati. In questo tipo di dati, ogni punto dati rappresenta una singola lettura istantanea della glicemia. Il punto dati contiene campi per la glicemia, le relazioni temporali con i pasti e il sonno e l'origine dello specimen misurato. Tutti i campi, ad eccezione della glicemia, sono facoltativi.
- La concentrazione di glicemia viene misurata in mmol/L (1 mmol/L equivale a 18 mg/dL).
- Se specificata, la relazione temporale con il pasto deve avere uno dei valori elencati
in
FIELD_TEMPORAL_RELATION_TO_MEAL. - Il tipo di pasto deve avere uno dei valori elencati in
FIELD_MEAL_TYPE. Se il tipo di pasto non è noto, utilizzaMEAL_TYPE_UNKNOWN. - Se specificata, la relazione temporale con il sonno deve avere uno dei valori elencati
in
FIELD_TEMPORAL_RELATION_TO_SLEEP. - Se specificata, l'origine dello specimen di glicemia deve avere uno dei valori
elencati in
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE.
Creare un'origine dati
Android
Per scrivere un punto dati sulla glicemia, crea una nuova DataSource
di TYPE_BLOOD_GLUCOSE,
come mostrato nell'esempio seguente:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
Per scrivere un punto dati sulla glicemia, crea una nuova origine dati.
Metodo HTTP
POST
URL della richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources
Corpo della richiesta
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
Risposta
Se l'origine dati viene creata correttamente, la risposta è un codice di stato 200 OK. Il corpo della risposta contiene una rappresentazione JSON dell'origine dati, inclusa una proprietà datasource.dataStreamId che puoi utilizzare come ID dell'origine dati per le richieste successive.
Comando CURL
$ 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
Aggiunta di dati
Android
Per aggiungere dati all'origine creata sopra, crea un punto dati per questa origine dati, che può essere inserito utilizzando l'API History:
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
Questo esempio mostra come aggiungere dati sulla glicemia utilizzando l' origine dati creata sopra.
Metodo HTTP
PATCH
URL della richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
Corpo della richiesta
Per chiarezza, il corpo JSON mostrato di seguito è annotato con commenti per mostrare l'utilizzo delle costanti dei campi di salute. Sebbene l'API Fit attualmente elimini i commenti, ti consigliamo vivamente di rimuoverli dal codice, poiché JSON non supporta ufficialmente i commenti.
{
"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
}
]
}
]
}Risposta
Se i dati sulla glicemia vengono aggiunti correttamente, la risposta è un codice di stato 200 OK. Il corpo della risposta contiene una rappresentazione JSON dei dati sulla glicemia aggiunti.
Comando CURL
$ 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