Yenen gıda maddelerini okuma

Android

Uygulamanız belirli bir zaman diliminde yenen yiyeceklerin listesini DataType.TYPE_NUTRITION için bir veri okuma isteği oluşturuyor ve aşağıdaki örnekte gösterilmektedir:

val readRequest = DataReadRequest.Builder()
    .read(DataType.TYPE_NUTRITION)
    .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
    .build()

Veri okuma hakkında daha fazla bilgi için Fitness Geçmişi ile çalışma başlıklı makaleye bakın.

REST

REST API aracılığıyla yenen gıdaların listesini alma işlemi üç aşamadan oluşur işlem:

  1. com.google.nutrition için mevcut veri kaynaklarının listesini al veri türü. Alternatif olarak, veri kaynağı ayrıntıları zaten biliniyorsa bunları doğrudan bir sonraki adımda kullanabilirsiniz.
  2. Sırayla her bir veri kaynağından yenen yiyeceklerin listesini alın.
  3. (Birden fazla veri kaynağı varsa) yemek listelerini öğeler arasında yer alır.

Gıda veri kaynaklarının listesini alma

Her veri kaynağında yalnızca datasource.dataStreamId gerekli olduğundan, yanıtı yalnızca bu öğeyle sınırlamak için bir alan maskesi (burada gösterildiği gibi) kullanılabilir

HTTP yöntemi

GET

İstek URL'si

https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.nutrition&fields=dataSource(dataStreamId)

Yanıt

Başarılı olursa yanıt bir 200 OK durum kodu olur. Yanıt gövdesi , listedeki her öğe bir veri kaynağına karşılık gelen bir JSON listesi içerir.

Örneğin:

{
 "dataSource": [
  {
   "dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource1:"
  },
  {
   "dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource2:"
  }
 ]
}

CURL komutu

$ curl \
  'https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.nutrition&fields=dataSource(dataStreamId)' \
      --header 'Authorization: Bearer ya29.yourtokenvalue' \
      --header 'Accept: application/json' \
      --compressed

Bir veri kaynağından yenen yiyeceklerin listesini edinme

1. adımdaki (Her bir kaynaktan gelen dataSource.dataStreamId değerini kullanın) yenen yemeklerin listesini almak için tuşuna basın.

datasetId, gerekli dönemin nanosaniye cinsinden başlangıcı ve sonudur (veri kümesi kaynağında tanımlandığı gibi).

Örneğin, 1546300800000000000-1546387200000000000, 1 Ocak 2019 00:00:00 UTC ile 2 Ocak 2019 00:00:00 için datasetId.

HTTP yöntemi

GET

İstek URL'si

https://www.googleapis.com/fitness/v1/users/me/dataSources/dataSource.dataStreamId/datasets/1546300800000000000-1546387200000000000?fields=point%2Fvalue%2FstringVal

Yanıt

{
 "point": [
  {
   "value": [
    {},
    {},
    {
     "stringVal": "apple"
    }
   ]
  },
  {
   "value": [
    {},
    {},
    {
     "stringVal": "banana"
    }
   ]
  },
  {
   "value": [
    {},
    {},
    {
     "stringVal": "carrot"
    }
   ]
  }
 ]
}

CURL komutu

$ curl \
  'https://www.googleapis.com/fitness/v1/users/me/dataSources/dataSource.dataStreamId/datasets/157059699023000000-1575159699023999000?fields=point%2Fvalue%2FstringVal' \
      --header 'Authorization: Bearer ya29.yourtokenvalue' \
      --header 'Accept: application/json' \
      --compressed