Anda dapat menambahkan data hidrasi ke Google Fit dengan membuat sumber data dan menggunakan
jenis data com.google.hydration
. Setiap titik data mewakili volume,
dalam liter, yang digunakan oleh pengguna sebagai bagian dari satu minuman. Gunakan float untuk
menentukan volume.
Catatan: Stempel waktu menunjukkan kapan minuman dikonsumsi. Karena com.google.hydration
adalah jenis data yang bersifat instan, waktu mulai dan waktu berakhir harus sama.
Membuat sumber data
Android
Gunakan DataSource.Builder
untuk membuat sumber data baru. Misalnya, hydrationSource
.
val hydrationSource = DataSource.Builder()
.setDataType(DataType.TYPE_HYDRATION)
.setStreamName("hydrationSource")
// ...
.build()
REST
Panggil REST API untuk membuat sumber data baru. Misalnya, HydrationSource
.
Metode HTTP
POST
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources
Isi permintaan
{
"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
}
]
}
}
Respons
Jika sumber data berhasil dibuat, responsnya adalah kode status 200 OK
. Isi respons memuat representasi JSON dari sumber data, termasuk properti datasource.dataStreamId
yang dapat Anda gunakan sebagai ID sumber data untuk permintaan berikutnya.
Perintah 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
Menambahkan Data Hidrasi
Android
Contoh ini menunjukkan cara membuat titik data baru, dan menambahkan data hidrasi untuk air minum 0,3 liter, menggunakan sumber data Anda.
val hydration = DataPoint.builder(hydrationSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_VOLUME, 0.3f)
.build()
REST
Contoh ini menunjukkan cara menambahkan data hidrasi menggunakan sumber data.
Metode HTTP
PATCH
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000
Isi permintaan
{
"minStartTimeNs": 1275753581000000000,
"maxEndTimeNs": 1275753581000000000,
"dataSourceId": "raw:com.google.hydration:407408718192:HydrationSource",
"point": [
{
"startTimeNanos": 1275753581000000000,
"endTimeNanos": 1275753581000000000,
"dataTypeName": "com.google.hydration",
"value": [
{
"fpVal": 0.3
}
]
}
]
}
Respons
Jika titik data berhasil dibuat, Anda akan mendapatkan kode status respons HTTP 200 OK
. Isi respons memuat representasi JSON
dari set data.
Perintah 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