Nesta seção, demonstramos a leitura da nutrição diária agregada de uma fonte de dados específica. A resposta contém uma lista de buckets (um por período de 24 horas),
cada um com um único conjunto de dados e ponto de dados que contém um campo para todos os tipos
de dados de nutrição registrados. Se não houver valores nutricionais para um período
específico, não há conjunto de dados. Se mais de um meal_type
for registrado, o
valor será definido como UNKNOWN
.
Android
Seu app pode ler os dados nutricionais diários de um usuário criando uma solicitação de leitura e especificando o agregado para os tipos de dados 'DataType.TYPE_NUTRITION' e 'DataType.AGGREGATE_NUTRITION_SUMMARY', conforme mostrado no exemplo a seguir:
val readRequest = DataReadRequest.Builder()
.aggregate(DataType.AGGREGATE_NUTRITION_SUMMARY)
.bucketByTime(1, TimeUnit.DAYS)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build()
REST
Seu app pode ler os dados nutricionais diários de um usuário
agregando uma solicitação POST
e consultando a fonte de dados especificada. Faça uma consulta separada para cada fonte de dados.
Método HTTP
POST
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Corpo da solicitação
{
"aggregateBy": [{
"dataSourceId":
"raw:com.google.nutrition:407408718192:MyDataSource"
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1471244400000,
"endTimeMillis": 1471259040000
}
Resposta
Se a fonte de dados for criada com sucesso, a resposta será um código de status 200 OK
. O corpo da resposta contém uma representação JSON da fonte de dados, incluindo uma propriedade datasource.dataStreamId
que pode ser usada como ID da fonte de dados das próximas solicitações.
ComandoCURL
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request POST \
--header "Content-Type: application/json;encoding=utf-8" --data @aggregate.json \
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate