La tua app può registrare dati sulla glicemia scrivendo nell'
Tipo di dati com.google.blood_glucose
. In questo tipo di dati, ogni punto dati rappresenta un singolo
lettura della glicemia. Il punto dati contiene campi per la glicemia
concentrazione, relazioni temporali con i pasti e il sonno e la fonte
campione che è stato misurato. Tutti i campi tranne la concentrazione di glicemia
sono facoltativi.
- La concentrazione di glucosio nel sangue viene misurata in mmol/L (1 mmol/L è equivalenti a 18 mg/dL).
- Se specificato, 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 specificato, la relazione temporale con il sonno deve avere uno dei valori elencati
in
FIELD_TEMPORAL_RELATION_TO_SLEEP
. - Se specificato, la fonte del campione di glicemia deve avere uno dei valori
elencato in
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
.
Creare un'origine dati
Android
Per scrivere un punto dati sulla glicemia, crea un nuovo 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 di 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 è uno stato 200 OK
le API nel tuo codice. Il corpo della risposta contiene una rappresentazione JSON dell'origine dati,
inclusa una proprietà datasource.dataStreamId
che puoi utilizzare come 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 in precedenza, crea un punto dati per questi dati , che può essere inserita 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 l'aggiunta di dati sulla glicemia utilizzando l'origine dati creata sopra.
Metodo HTTP
PATCH
URL di 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 i commenti, per mostrare l'uso delle costanti dei campi sanitari. Al momento l'API Fit rilascerà i commenti, ti consigliamo vivamente di rimuoverli dal codice, perché 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 200 OK
codice di stato. Il corpo della risposta contiene una rappresentazione JSON del sangue
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