Android
Aplikacja może uzyskać listę produktów spożywczych zjadanych w określonym przedziale czasu przez
tworząc żądania odczytu danych i zapytania dotyczące usługi DataType.TYPE_NUTRITION
, jak
w tym przykładzie:
val readRequest = DataReadRequest.Builder()
.read(DataType.TYPE_NUTRITION)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build()
Więcej informacji na temat odczytywania danych znajdziesz w artykule Praca z historią aktywności.
REST
Pobieranie za pomocą interfejsu API REST listy zjadanych produktów spożywczych składa się z 3 etapów. proces:
- Pobierz listę źródeł danych dostępnych dla:
com.google.nutrition
typu danych. Jeśli informacje o źródle danych są już znane, będzie można ich użyć bezpośrednio w następnym kroku. - Dzięki temu możesz uzyskać z każdego źródła danych listę spożytych posiłków.
- (jeśli istnieje więcej niż jedno źródło danych) połącz listy produktów spożywczych elementów w aplikacji klienckiej.
Pobieranie listy źródeł danych o żywności
Każde źródło danych wymaga tylko pola datasource.dataStreamId
,
maski pola, jak pokazano tutaj, można użyć do ograniczenia odpowiedzi tylko do tego
usłudze.
Metoda HTTP
GET
URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.nutrition&fields=dataSource(dataStreamId)
Odpowiedź
Jeśli operacja się uda, odpowiedź będzie miała kod stanu 200 OK
. treść odpowiedzi;
zawiera listę JSON, czyli każdy element na liście odpowiadający źródłom danych.
Na przykład:
{
"dataSource": [
{
"dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource1:"
},
{
"dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource2:"
}
]
}
Polecenie CURL
$ 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
Uzyskiwanie ze źródła danych listy spożytych posiłków
Użyj identyfikatorów dataSource.dataStreamId
z każdego źródła podanych w kroku 1 w
Turn, aby pobrać listę zjedzonego jedzenia.
datasetId
oznacza początek i koniec wymaganego okresu w nanosekundach
zgodnie z definicją w zasobie zbioru danych.
Na przykład 1546300800000000000-1546387200000000000
oznacza
datasetId
, od 01 stycznia 2019 r. od godz. 00:00:00 UTC do 02 stycznia 2019 r. do godz. 00:00:00.
Metoda HTTP
GET
URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources/dataSource.dataStreamId/datasets/1546300800000000000-1546387200000000000?fields=point%2Fvalue%2FstringVal
Odpowiedź
{
"point": [
{
"value": [
{},
{},
{
"stringVal": "apple"
}
]
},
{
"value": [
{},
{},
{
"stringVal": "banana"
}
]
},
{
"value": [
{},
{},
{
"stringVal": "carrot"
}
]
}
]
}
Polecenie CURL
$ 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