Aplikasi Anda dapat mencatat data glukosa darah dengan menulis ke
jenis data com.google.blood_glucose
. Dalam jenis data ini, setiap titik data mewakili satu pembacaan glukosa darah instan. Titik datanya berisi kolom untuk konsentrasi glukosa darah, hubungan sementara dengan makanan dan tidur, serta sumber spesimen yang diukur. Semua kolom kecuali untuk konsentrasi glukosa darah bersifat opsional.
- Konsentrasi glukosa darah diukur dalam mmol/L (1 mmol/L setara dengan 18 mg/dL).
- Jika ditentukan, hubungan sementara dengan makanan harus memiliki salah satu nilai yang tercantum
dalam
FIELD_TEMPORAL_RELATION_TO_MEAL
. - Jenis makanan harus memiliki salah satu nilai yang tercantum di
FIELD_MEAL_TYPE
. Jika jenis makanan tidak diketahui, gunakanMEAL_TYPE_UNKNOWN
. - Jika ditentukan, hubungan sementara dengan tidur harus memiliki salah satu nilai yang tercantum
dalam
FIELD_TEMPORAL_RELATION_TO_SLEEP
. - Jika ditentukan, sumber spesimen glukosa darah harus memiliki salah satu nilai yang tercantum
di
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
.
Membuat sumber data
Android
Untuk menulis titik data glukosa darah, buat DataSource
baru dari TYPE_BLOOD_GLUCOSE
,
seperti yang ditunjukkan pada contoh berikut:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
Untuk menulis titik data glukosa darah, buat sumber data baru.
Metode HTTP
POST
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources
Isi permintaan
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
Respons
Jika sumber data berhasil dibuat, responsnya adalah kode status
200 OK
. Isi respons berisi 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 @blood-glucose-ds.json \ https://www.googleapis.com/fitness/v1/users/me/dataSources
Menambahkan data
Android
Untuk menambahkan data ke sumber yang dibuat di atas, buat titik data untuk sumber data ini, yang dapat disisipkan menggunakan History API:
val bloodGlucose = DataPoint.builder(bloodGlucoseSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_BLOOD_GLUCOSE_LEVEL, 5.0f) // 90 mg/dL
.setField(FIELD_TEMPORAL_RELATION_TO_MEAL, FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL)
.setField(FIELD_MEAL_TYPE, MEAL_TYPE_BREAKFAST)
.setField(FIELD_TEMPORAL_RELATION_TO_SLEEP, TEMPORAL_RELATION_TO_SLEEP_ON_WAKING)
.setField(FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE, BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD)
.build()
REST
Contoh ini menunjukkan penambahan data glukosa darah menggunakan sumber data yang dibuat di atas.
Metode HTTP
PATCH
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
Isi permintaan
Agar lebih jelas, isi JSON yang ditunjukkan di bawah dianotasi dengan komentar untuk menunjukkan penggunaan konstanta kolom kesehatan. Meskipun Fit API saat ini akan menghapus komentar, sebaiknya Anda menghapus komentar ini dari kode, karena JSON tidak secara resmi mendukung komentar.
{ "minStartTimeNs": 1574159699023000000, "maxEndTimeNs": 1574159699023000000, "dataSourceId": "datasource.dataStreamId", "point": [ { "startTimeNanos": 1574159699023000000, "endTimeNanos": 1574159699023000000, "dataTypeName": "com.google.blood_glucose", "value": [ { // Blood glucose level, 90 mg/dL "fpVal": 5.0 }, { // FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL "intVal": 3 }, { // MEAL_TYPE_BREAKFAST "intVal": 1 }, { // TEMPORAL_RELATION_TO_SLEEP_ON_WAKING "intVal": 3 }, { // BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD "intVal": 2 } ] } ] }
Respons
Jika data glukosa darah berhasil ditambahkan, responsnya adalah kode status 200 OK
. Tubuh respons berisi representasi JSON dari data glukosa
darah yang telah ditambahkan.
Perintah CURL
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request PATCH \ --header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-data.json \ https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000