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ı; kandaki glikoz konsantrasyonu, yemek ve uyku ile zamansal ilişkiler ve ölçülen örneğin kaynağını içerir. Kan şekeri konsantrasyonu dışındaki tüm alanlar isteğe bağlıdır.
- Kandaki glikoz konsantrasyonu mmol/L cinsinden ölçülür (1 mmol/L, 18 mg/dL'ye eşdeğerdir).
- Belirtilirse yemekle zamansal ilişki,
FIELD_TEMPORAL_RELATION_TO_MEAL
özelliğinde listelenen değerlerden birine sahip olmalıdır. - Yemek türü,
FIELD_MEAL_TYPE
öğesinde listelenen değerlerden birine sahip olmalıdır. Yemek türü bilinmiyorsaMEAL_TYPE_UNKNOWN
seçeneğini kullanın. - Belirtilirse uykuyla zamansal ilişki,
FIELD_TEMPORAL_RELATION_TO_SLEEP
içinde listelenen değerlerden birine sahip olmalıdır. - Belirtilmişse kan şekeri örneği kaynağı,
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
'te listelenen değerlerden birine sahip olmalıdır.
Veri kaynağı oluşturma
Android
Bir kan şekeri veri noktası yazmak için aşağıdaki örnekte gösterildiği gibi yeni bir DataSource
TYPE_BLOOD_GLUCOSE
oluşturun:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
Kan şekeri veri 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, bir 200 OK
durum kodu olur. Yanıt gövdesi, veri kaynağının JSON gösterimini içerir. Buna, sonraki istekler için veri kaynağı kimliği olarak kullanabileceğiniz bir datasource.dataStreamId
özelliği de dahildir.
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ğı için History API kullanılarak eklenebilecek bir veri noktası oluşturun:
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 eklenmesi 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
Anlaşılır olması için, sağlık alanı sabitlerinin kullanımını göstermek üzere aşağıda gösterilen JSON gövdesine yorumlarla not eklenmiştir. Fit API şu anda yorumları bıraksa 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 olarak bir 200 OK
durum kodu verilir. Yanıt gövdesi, eklenen kan glikoz verilerinin JSON temsilini içerir.
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