برنامه شما میتواند دادههای قند خون را با نوشتن در نوع داده com.google.blood_glucose
ثبت کند. در این نوع داده، هر نقطه داده نشان دهنده یک قرائت لحظه ای گلوکز خون است. نقطه داده حاوی فیلدهایی برای غلظت گلوکز خون، روابط زمانی با وعدههای غذایی و خواب، و منبع نمونهای است که اندازهگیری شد. همه فیلدها به جز غلظت گلوکز خون اختیاری هستند.
- غلظت گلوکز خون بر حسب میلی مول در لیتر (1 میلی مول در لیتر معادل 18 میلی گرم در دسی لیتر) اندازه گیری می شود.
- اگر مشخص شده باشد، رابطه زمانی با وعده غذایی باید یکی از مقادیر فهرست شده در
FIELD_TEMPORAL_RELATION_TO_MEAL
را داشته باشد. - نوع غذا باید یکی از مقادیر فهرست شده در
FIELD_MEAL_TYPE
را داشته باشد. اگر نوع غذا مشخص نیست، ازMEAL_TYPE_UNKNOWN
استفاده کنید. - اگر مشخص شده باشد، رابطه زمانی با خواب باید یکی از مقادیر فهرست شده در
FIELD_TEMPORAL_RELATION_TO_SLEEP
را داشته باشد. - اگر مشخص شده باشد، منبع نمونه گلوکز خون باید یکی از مقادیر ذکر شده در
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
را داشته باشد.
یک منبع داده ایجاد کنید
اندروید
برای نوشتن نقطه داده گلوکز خون، یک DataSource
جدید از TYPE_BLOOD_GLUCOSE
ایجاد کنید، همانطور که در مثال زیر نشان داده شده است:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
استراحت
برای نوشتن نقطه داده گلوکز خون، یک منبع داده جدید ایجاد کنید.
روش HTTP
POST
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
درخواست بدن
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
پاسخ
اگر منبع داده با موفقیت ایجاد شود، پاسخ یک کد وضعیت 200 OK
است. بدنه پاسخ حاوی یک نمایش JSON از منبع داده، از جمله ویژگی datasource.dataStreamId
است که می توانید به عنوان شناسه منبع داده برای درخواست های بعدی استفاده کنید.
دستور 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
افزودن داده ها
اندروید
برای افزودن داده به منبع ایجاد شده در بالا، یک نقطه داده برای این منبع داده ایجاد کنید که می تواند با استفاده از 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()
استراحت
این مثال اضافه کردن داده های گلوکز خون را با استفاده از منبع داده ایجاد شده در بالا نشان می دهد.
روش HTTP
PATCH
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
درخواست بدن
برای وضوح، بدنه JSON نشان داده شده در زیر با نظرات حاشیه نویسی شده است تا استفاده از ثابت های فیلد سلامت را نشان دهد. اگرچه Fit API در حال حاضر نظرات را حذف می کند، بسیار توصیه می شود آنها را از کد خود حذف کنید ، زیرا JSON به طور رسمی از نظرات پشتیبانی نمی کند.
{ "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 } ] } ] }
پاسخ
اگر داده های گلوکز خون با موفقیت اضافه شود، پاسخ یک کد وضعیت 200 OK
است. بدنه پاسخ حاوی یک نمایش JSON از گلوکزیداتای خون است که اضافه شده است.
دستور 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