Android
Uygulamanız, aşağıdaki örnekte gösterildiği gibi bir veri okuma isteği oluşturup DataType.TYPE_NUTRITION için sorgu göndererek belirli bir zaman aralığında tüketilen yiyeceklerin listesini alabilir:
val readRequest = DataReadRequest.Builder()
.read(DataType.TYPE_NUTRITION)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build()
Okuma verileri hakkında daha fazla bilgi için Fitness Geçmişi ile çalışma başlıklı makaleyi inceleyin.
REST
Yenilen yemek öğelerinin listesini REST API aracılığıyla almak üç aşamalı bir işlemdir:
com.google.nutritionVeri türü için kullanılabilen veri kaynaklarının listesini alın. Alternatif olarak, veri kaynağı ayrıntıları zaten biliniyorsa bunlar doğrudan sonraki adımda kullanılabilir.- Sırayla her veri kaynağından tüketilen yiyeceklerin listesini alın.
- (Birden fazla veri kaynağı varsa) Müşteri uygulamasındaki yemek listelerini birleştirin.
Yemek veri kaynaklarının listesini alma
Her bir veri kaynağı için 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
İ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 200 OK durum kodudur. Yanıt gövdesi, listedeki her öğenin bir veri kaynağına karşılık geldiği 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' \
--compressedYenen yemeklerin listesini bir veri kaynağından alma
Yenilen yemeklerin listelerini almak için 1. adımda belirtilen kaynakların her birinden sırayla dataSource.dataStreamId simgesini kullanın.
datasetId, veri kümesi kaynağında tanımlandığı şekilde, gerekli zaman aralığının başlangıcı ve bitişidir (nanosaniye cinsinden).
Örneğin, 1546300800000000000-1546387200000000000, 01 Ocak 2019 00:00:00 UTC ile 02 Ocak 2019 00:00:00 arasındaki datasetId değerini gösterir.
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