Android
Uygulamanız, aşağıdaki örnekte gösterildiği gibi, veri okuma isteği oluşturup DataType.TYPE_NUTRITION
için sorgu oluşturarak belirli bir zaman diliminde yenen gıda öğelerinin listesini alabilir:
val readRequest = DataReadRequest.Builder()
.read(DataType.TYPE_NUTRITION)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build()
Verileri okuma hakkında daha fazla bilgi için Fitness Geçmişiyle Çalışma başlıklı makaleye bakın.
REST
REST API aracılığıyla yenen gıda öğelerinin listesini almak üç aşamalı bir süreçtir:
com.google.nutrition
veri türü için kullanılabilen veri kaynaklarının listesini alın. Alternatif olarak veri kaynağı ayrıntıları zaten biliniyorsa bu bilgiler bir sonraki adımda doğrudan kullanılabilir.- Bunun üzerine, her veri kaynağından yenilen yiyeceklerin listesini çıkarın.
- (Birden fazla veri kaynağı varsa), istemci uygulamasındaki yiyecek öğesi listelerini birleştirin.
Gıda veri kaynaklarının listesi alma
Her bir veri kaynağından yalnızca datasource.dataStreamId
gerekli olduğundan, yanıtı yalnızca bu mülkle sınırlamak için burada gösterildiği gibi bir alan maskesi kullanılabilir.
HTTP yöntemi
GET
URL isteyin
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 bir veri kaynağına karşılık gelen JSON öğesini içeren 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 yenilen gıdalar listesini alma
Sırasında 1. adımdaki kaynakların her birinde bulunan dataSource.dataStreamId
'yi kullanarak yenen yiyecek listelerini alın.
datasetId
, veri kümesi kaynağında tanımlandığı şekilde nanosaniye cinsinden gerekli dönemin başlangıcı ve sonudur.
Örneğin 1546300800000000000-1546387200000000000
, 01 Ocak 2019 00:00:00 UTC ile 02 Ocak 2019 00:00:00 için oluşturulan datasetId
değerini temsil eder.
HTTP yöntemi
GET
URL isteyin
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