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 okumasını temsil eder. Veri noktası, kandaki glikoz konsantrasyonunu sağlamak, öğünler ve uykuyla ilgili geçici 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.
- Kan şekeri konsantrasyonu mmol/L cinsinden ölçülür (1 mmol/L, 18 mg/dL'ye eş değerdir).
- Belirtilirse yemekle ilgili geçici ilişkide
FIELD_TEMPORAL_RELATION_TO_MEAL
öğesinde listelenen değerlerden biri olmalıdır. - Yemek türü,
FIELD_MEAL_TYPE
öğesinde listelenen değerlerden birine sahip olmalıdır. Yemek türü bilinmiyorsaMEAL_TYPE_UNKNOWN
kullanın. - Belirtilirse
FIELD_TEMPORAL_RELATION_TO_SLEEP
öğesinde listelenen değerlerden birinin, uykuyla ilgili geçici ilişkisi olmalıdır. - Belirtilirse kan şekeri örneği kaynağı,
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
'te listelenen değerlerden birine sahip olmalıdır.
Veri kaynağı oluşturma
Android
Kandaki glikoz veri noktasını yazmak için aşağıdaki örnekte gösterildiği gibi yeni bir TYPE_BLOOD_GLUCOSE
DataSource
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
URL isteyin
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övdesi, veri kaynağının JSON temsilini içerir. Buna, sonraki istekler için veri kaynağı kimliği olarak kullanabileceğiniz datasource.dataStreamId
özelliği 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 üzere, bu veri kaynağı için bir geçmiş veri kaynağı oluşturmak üzere History API'yi kullanarak ekleyin:
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 eklendiği gösterilmektedir.
HTTP yöntemi
PATCH
URL isteyin
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
İstek metni
Anlaşılır olması için, aşağıda gösterilen JSON gövdesinde, açıklama olarak açıklama alanında sağlık alanı sabitlerinin kullanımını göstermek için ek açıklamalar bulunur. Fit API şu anda yorum 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, bir 200 OK
durum kodu olur. Yanıt gövdesi, eklenen kandaki 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