Добавить данные о потреблении жидкости в Google Fit можно, создав источник данных и используя тип данных com.google.hydration . Каждая точка данных представляет собой объем в литрах, выпитый пользователем в рамках одного напитка. Для указания объема используйте число с плавающей запятой. Примечание: метка времени указывает, когда напиток был выпит. Поскольку com.google.hydration — это мгновенный тип данных, время начала и окончания должно совпадать.
Создание источника данных
Android
Используйте DataSource.Builder для создания нового источника данных. Например, hydrationSource .
val hydrationSource = DataSource.Builder()
.setDataType(DataType.TYPE_HYDRATION)
.setStreamName("hydrationSource")
// ...
.build()
ОТДЫХ
Для создания нового источника данных воспользуйтесь REST API. Например, вызовите HydrationSource .
метод HTTP
POST
URL запроса
https://www.googleapis.com/fitness/v1/users/me/dataSources
Текст запроса
{
"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
}
]
}
}
Ответ
Если источник данных создан успешно, в ответ приходит код состояния 200 OK . Тело ответа содержит JSON-представление источника данных, включая свойство datasource.dataStreamId , которое можно использовать в качестве идентификатора источника данных для последующих запросов.
Команда 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
Добавление данных о гидратации
Android
В этом примере показано, как создать новую точку данных и добавить данные об уровне гидратации для 0,3 литра воды, используя ваш источник данных.
val hydration = DataPoint.builder(hydrationSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_VOLUME, 0.3f)
.build()
ОТДЫХ
В этом примере показано, как добавить данные о гидратации, используя ваш источник данных.
метод HTTP
PATCH
URL запроса
https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000
Текст запроса
{
"minStartTimeNs": 1275753581000000000,
"maxEndTimeNs": 1275753581000000000,
"dataSourceId": "raw:com.google.hydration:407408718192:HydrationSource",
"point": [
{
"startTimeNanos": 1275753581000000000,
"endTimeNanos": 1275753581000000000,
"dataTypeName": "com.google.hydration",
"value": [
{
"fpVal": 0.3
}
]
}
]
}
Ответ
Если ваша точка данных была успешно создана, вы получите HTTP-ответ с кодом состояния 200 OK . Тело ответа содержит JSON-представление набора данных.
Команда 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