É possível adicionar dados de hidratação ao Google Fit criando uma fonte de dados e usando
o tipo de dados com.google.hydration
. Cada ponto de dados representa o volume,
em litros, consumidas por um usuário como parte de uma única bebida. Use um ponto flutuante para
especificar o volume.
Observação: o carimbo de data/hora indica quando a bebida foi consumida. Como com.google.hydration
é um tipo de dado instantâneo, os horários de início e término precisam ser os mesmos.
Crie uma origem de dados
Android
Use DataSource.Builder
para criar uma nova fonte de dados. Por exemplo, hydrationSource
.
val hydrationSource = DataSource.Builder()
.setDataType(DataType.TYPE_HYDRATION)
.setStreamName("hydrationSource")
// ...
.build()
REST
Chame a API REST para criar uma fonte de dados. Por exemplo, HydrationSource
.
Método HTTP
POST
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
Corpo da solicitação
{
"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
}
]
}
}
Resposta
Se a fonte de dados for criada corretamente, a resposta será um status 200 OK
o código-fonte. O corpo da resposta contém uma representação JSON da fonte de dados,
incluindo uma propriedade datasource.dataStreamId
que você pode usar como os dados
ID de origem para as solicitações subsequentes.
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
Adicionar dados de hidratação
Android
Este exemplo mostra como criar um ponto de dados e adicionar hidratação dados para uma bebida de 0,3 litro de água, usando sua fonte de dados.
val hydration = DataPoint.builder(hydrationSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_VOLUME, 0.3f)
.build()
REST
Neste exemplo, mostramos como adicionar dados de hidratação usando seus dados fonte.
Método HTTP
PATCH
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000
Corpo da solicitação
{
"minStartTimeNs": 1275753581000000000,
"maxEndTimeNs": 1275753581000000000,
"dataSourceId": "raw:com.google.hydration:407408718192:HydrationSource",
"point": [
{
"startTimeNanos": 1275753581000000000,
"endTimeNanos": 1275753581000000000,
"dataTypeName": "com.google.hydration",
"value": [
{
"fpVal": 0.3
}
]
}
]
}
Resposta
Se o ponto de dados tiver sido criado corretamente, você vai receber uma solicitação HTTP 200 OK
código de status da resposta. O corpo da resposta contém uma representação JSON
no conjunto de dados.
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