Puoi aggiungere i dati sull'idratazione a Google Fit creando un'origine dati e utilizzando il tipo di dato com.google.hydration
. Ogni punto dati rappresenta il volume,
in litri, consumati da un utente come parte di una singola bevanda. Utilizza un numero in virgola mobile per
e specificare il volume.
Nota: il timestamp indica quando è stata consumata la bevanda. Poiché com.google.hydration
è un tipo di dati istantanei, l'ora di inizio e di fine devono essere uguali.
Creazione di un'origine dati
Android
Utilizza DataSource.Builder
per creare una nuova origine dati. Ad esempio, hydrationSource
.
val hydrationSource = DataSource.Builder()
.setDataType(DataType.TYPE_HYDRATION)
.setStreamName("hydrationSource")
// ...
.build()
REST
Chiama l'API REST per creare una nuova origine dati. Ad esempio, HydrationSource
.
Metodo HTTP
POST
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources
Corpo della richiesta
{
"dataStreamName": "HydrationSource",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.hydration",
"field": [
{
"name": "volume",
"format": "floatPoint",
"optional": false
}
]
}
}
Risposta
Se l'origine dati viene creata correttamente, la risposta è un codice 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 @hydration-ds.json \
https://www.googleapis.com/fitness/v1/users/me/dataSources
Aggiunta di dati di idratazione
Android
Questo esempio mostra come creare un nuovo punto dati e aggiungere l'idratazione per una bevanda d'acqua di 0,3 litri, utilizzando l'origine dati.
val hydration = DataPoint.builder(hydrationSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_VOLUME, 0.3f)
.build()
REST
Questo esempio mostra come aggiungere dati sull'idratazione utilizzando questi dati sorgente.
Metodo HTTP
PATCH
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000
Corpo della richiesta
{
"minStartTimeNs": 1275753581000000000,
"maxEndTimeNs": 1275753581000000000,
"dataSourceId": "raw:com.google.hydration:407408718192:HydrationSource",
"point": [
{
"startTimeNanos": 1275753581000000000,
"endTimeNanos": 1275753581000000000,
"dataTypeName": "com.google.hydration",
"value": [
{
"fpVal": 0.3
}
]
}
]
}
Risposta
Se il punto dati è stato creato correttamente, riceverai un codice di stato della risposta HTTP 200 OK
. Il corpo della risposta contiene una rappresentazione JSON
il set di dati.
Comando CURL
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" --request PATCH \
--header "Content-Type: application/json;encoding=utf-8" --data @hydration-data.json \
https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000