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 dikonsumsi 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 instan, waktu mulai dan akhir 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 berisi representasi JSON 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 minuman air 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 Anda.
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 Anda berhasil dibuat, Anda akan mendapatkan kode status respons HTTP 200 OK. Isi respons berisi 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