Kan Şekeri Verilerini Yazma

Uygulamanız, com.google.blood_glucose veri türü. Bu veri türünde, her bir veri noktası, tek bir anı kan şekeri ölçümü. Veri noktasında kandaki glikoz alanlar bulunur konsantrasyonu, yemek ve uykuyla zamansal ilişkiler ve belirli bir model seçin. Kandaki glikoz konsantrasyonu hariç tüm alanlar isteğe bağlıdır.

  • Kandaki glikoz konsantrasyonu mmol/L (1 mmol/L) cinsinden ölçülür 18 mg/dL'ye eşdeğerdir).
  • Belirtilmişse öğünle zamansal ilişki aşağıdaki değerlerden birine sahip olmalıdır FIELD_TEMPORAL_RELATION_TO_MEAL içinde.
  • Yemek türü, FIELD_MEAL_TYPE öğesinde listelenen değerlerden birine sahip olmalıdır. Yemek türü bilinmiyorsa MEAL_TYPE_UNKNOWN değerini kullanın.
  • Belirtilmişse uykuyla zamansal ilişki, listelenen değerlerden birine sahip olmalıdır FIELD_TEMPORAL_RELATION_TO_SLEEP içinde.
  • Belirtilmişse kan şekeri örneğinin kaynağı aşağıdaki değerlerden birine sahip olmalıdır FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE konumunda listelenir.

Veri kaynağı oluşturma

Android

Kan şekeri veri noktası yazmak için yeni bir DataSource oluşturun / TYPE_BLOOD_GLUCOSE, aşağıdaki örnekte gösterildiği gibi:

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, 200 OK durumu olur girin. Yanıt gövdesi, veri kaynağının JSON temsilini içerir. veri olarak kullanabileceğiniz bir datasource.dataStreamId özelliği dahil kaynak kimliğini kullanın.

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 veriler için bir veri noktası oluşturun (Geçmiş API'si kullanılarak eklenebilen) kaynağı:

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ğı.

HTTP yöntemi

PATCH

İstek URL'si

https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000

İstek metni

Daha net bir ifadeyle aşağıda gösterilen JSON gövdesi, yorumlarla birlikte sağlık alanı sabitlerinin kullanımı. Fit API şu anda yorum bırakıyor olsa da bunları kodunuzdan kaldırmanız önemle tavsiye edilir çünkü JSON yorumları resmi olarak desteklemelidir.

{
  "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

Kandaki glikoz verileri başarıyla eklenirse yanıt 200 OK olur kullanabilirsiniz. Yanıt gövdesi, kanın JSON gösterimini içerir Glikoz verileri.

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