Uygulamanız, com.google.blood_glucose veri türüne yazarak kan şekeri verilerini kaydedebilir. Bu veri türünde her veri noktası, tek bir anlık kan şekeri ölçümünü temsil eder. Veri noktasında kan şekeri konsantrasyonu, yemek ve uykuyla ilgili zamansal ilişkiler ve ölçülen numunenin kaynağına ait alanlar bulunur. Kan şekeri konsantrasyonu dışındaki tüm alanlar isteğe bağlıdır.
- Kan şekeri konsantrasyonu mmol/L cinsinden ölçülür (1 mmol/L, 18 mg/dL'ye eşittir).
- Belirtilmişse öğünle olan zamansal ilişki,
FIELD_TEMPORAL_RELATION_TO_MEALiçinde listelenen değerlerden birine sahip olmalıdır. - Yemek türü,
FIELD_MEAL_TYPEiçinde listelenen değerlerden birine sahip olmalıdır. Yemek türü bilinmiyorsaMEAL_TYPE_UNKNOWNdeğerini kullanın. - Belirtilirse uykuyla ilgili zamansal ilişki,
FIELD_TEMPORAL_RELATION_TO_SLEEPbölümünde listelenen değerlerden birine sahip olmalıdır. - Belirtilirse kan şekeri örneği kaynağı,
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCEbölümünde listelenen değerlerden birine sahip olmalıdır.
Veri kaynağı oluşturma
Android
Kan şekeri verisi noktası yazmak için aşağıdaki örnekte gösterildiği gibi DataSource TYPE_BLOOD_GLUCOSE oluşturun:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
Kan şekeri verisi noktası yazmak için yeni bir veri kaynağı oluşturun.
HTTP yöntemi
POST
İstek URL'si
https://www.googleapis.com/fitness/v1/users/me/dataSources
İstek metni
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
Yanıt
Veri kaynağı başarıyla oluşturulursa yanıt 200 OK durum kodu olur. Yanıt gövdesinde, veri kaynağının JSON gösterimi bulunur. Bu gösterim, sonraki isteklerde veri kaynağı kimliği olarak kullanabileceğiniz bir datasource.dataStreamId özelliğini içerir.
CURL komutu
$ 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
Veri ekleme
Android
Yukarıda oluşturulan kaynağa veri eklemek için bu veri kaynağına yönelik bir veri noktası oluşturun. Bu veri noktası, History API kullanılarak eklenebilir:
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
Bu örnekte, yukarıda oluşturulan veri kaynağı kullanılarak kan şekeri verilerinin nasıl ekleneceği gösterilmektedir.
HTTP yöntemi
PATCH
İstek URL'si
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
İstek metni
Aşağıda gösterilen JSON gövdesi, sağlık alanı sabitlerinin kullanımını göstermek için yorumlarla açıklanmıştır. Fit API şu anda yorumları bırakacak olsa da JSON, yorumları resmi olarak desteklemediğinden bunları kodunuzdan kaldırmanız önemle tavsiye edilir.
{
"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
}
]
}
]
}Yanıt
Kan şekeri verileri başarıyla eklenirse yanıt 200 OK durum kodu olur. Yanıt gövdesinde, eklenen kan şekeri verilerinin JSON gösterimi bulunur.
CURL komutu
$ 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