В этом разделе демонстрируется чтение сводных данных о суточном потреблении питательных веществ из определенного источника данных. Ответ содержит список интервалов (по одному на каждые 24 часа), каждый из которых содержит один набор данных и точку данных, включающую поле для всех зарегистрированных типов данных о питании. Если для определенного периода времени отсутствуют значения о питании, значит, набор данных отсутствует. Если зарегистрировано более одного meal_type , значение будет установлено на UNKNOWN .
Android
Ваше приложение может считывать сводные данные о ежедневном питании пользователя, создав запрос на чтение данных и указав агрегированные данные для типов данных 'DataType.TYPE_NUTRITION' и 'DataType.AGGREGATE_NUTRITION_SUMMARY' , как показано в следующем примере:
val readRequest = DataReadRequest.Builder()
.aggregate(DataType.AGGREGATE_NUTRITION_SUMMARY)
.bucketByTime(1, TimeUnit.DAYS)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build()
ОТДЫХ
Ваше приложение может считывать сводные данные о ежедневном питании пользователя, отправляя POST запрос и обращаясь к указанному источнику данных. Для каждого источника данных необходимо выполнить отдельный запрос.
метод HTTP
POST
URL запроса
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Текст запроса
{
"aggregateBy": [{
"dataSourceId":
"raw:com.google.nutrition:407408718192:MyDataSource"
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1471244400000,
"endTimeMillis": 1471259040000
}
Ответ
Если источник данных создан успешно, в ответ приходит код состояния 200 OK . Тело ответа содержит JSON-представление источника данных, включая свойство datasource.dataStreamId , которое можно использовать в качестве идентификатора источника данных для последующих запросов.
Команда CURL
$ 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