Users.dataSources

Definicja unikalnego źródła danych z czujników. Źródła danych mogą udostępniać nieprzetworzone dane pochodzące z czujników sprzętowych na urządzeniach lokalnych lub towarzyszących. Mogą też udostępniać dane pochodne utworzone przez przekształcenie lub scalanie innych źródeł danych. Ten sam typ danych może obejmować wiele źródeł danych. Każdy punkt danych wstawiony do tej usługi lub z niej odczytywany ma powiązane źródło danych. 

Źródło danych zawiera wystarczającą ilość informacji, aby jednoznacznie zidentyfikować dane, w tym informacje o urządzeniu i aplikacji, która je zebrała lub przekształciła. Zawiera on również przydatne metadane, np. wersję sprzętu i aplikacji oraz typ urządzenia. 

Każde źródło danych tworzy niepowtarzalny strumień danych z unikalnym identyfikatorem. Nie wszystkie zmiany w źródle danych wpływają na identyfikator strumienia. Dane zebrane przez zaktualizowane wersje tej samej aplikacji lub tego samego urządzenia można nadal uznać za należące do tego samego strumienia danych.

Listę metod stosowanych w przypadku tego zasobu znajdziesz na końcu tej strony.

Reprezentacje zasobów

{
  "dataStreamId": string,
  "name": string,
  "dataStreamName": string,
  "type": string,
  "dataType": {
    "name": string,
    "field": [
      {
        "name": string,
        "format": string,
        "optional": boolean
      }
    ]
  },
  "device": {
    "uid": string,
    "type": string,
    "version": string,
    "model": string,
    "manufacturer": string
  },
  "application": {
    "packageName": string,
    "version": string,
    "detailsUrl": string,
    "name": string
  },
  "dataQualityStandard": [
    string
  ]
}
nazwa usługi, Wartość Opis Notatki
application nested object Informacje o aplikacji, która dostarcza dane z czujników na platformę.
application.detailsUrl string Opcjonalny identyfikator URI, którego można używać do odsyłania do aplikacji.
application.name string Nazwa tej aplikacji. Jest to wymagane w przypadku klientów REST, ale nie wymuszamy unikalności tej nazwy. Udostępniamy ją dla wygody innych programistów, którzy chcą określić, który interfejs REST utworzył aplikację lub źródło danych.
application.packageName string Nazwa pakietu tej aplikacji. Jest używany jako unikalny identyfikator utworzony przez aplikacje na Androida, ale klienty REST nie mogą go określać. Numer projektu klienta REST będzie odzwierciedlony w identyfikatorach strumienia danych źródła danych, a nie w polu packageName.
application.version string Wersja aplikacji. Należy aktualizować to pole za każdym razem, gdy aplikacja zmieni się w sposób, który ma wpływ na obliczanie danych.
dataQualityStandard[] list NIE POPULUJ TEGO POLA. Nigdy nie jest wypełniane w odpowiedziach z platformy i ignorowane w zapytaniach. W przyszłej wersji zostanie on całkowicie usunięty.
dataStreamId string Unikalny identyfikator strumienia danych utworzonego przez to źródło danych. Identyfikator zawiera:

  • Producent, model i numer seryjny (UID) urządzenia fizycznego.
  • Nazwa pakietu aplikacji. Nazwa pakietu jest używana, gdy źródło danych zostało utworzone przez aplikację na Androida. Numer projektu programisty jest używany podczas tworzenia źródła danych przez klienta REST.
  • Typ źródła danych.
  • Nazwa strumienia źródła danych.
Pamiętaj, że nie wszystkie atrybuty źródła danych są używane jako część identyfikatora strumienia. Szczególnie nieużywana jest wersja sprzętu/aplikacji. Dzięki temu możemy zachować ten sam strumień przez aktualizacje wersji. Oznacza to też, że 2 obiekty DataSource mogą reprezentować ten sam strumień danych, nawet jeśli nie są sobie równe.

Dokładny format identyfikatora strumienia danych utworzonego przez aplikację na Androida: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName

Dokładny format identyfikatora strumienia danych utworzonego przez klienta REST: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName

Jeśli będzie brak jakichkolwiek opcjonalnych pól składających się na identyfikator strumienia danych, zostanie ono pominięte w identyfikatorze strumienia danych. Minimalny prawidłowy identyfikator strumienia danych to: type:dataType.name:numer projektu dewelopera

Numer projektu dewelopera i identyfikator UID urządzenia są zaciemniane podczas odczytu przez dowolnego klienta REST lub Androida, który nie utworzył źródła danych. Tylko twórca źródła danych zobaczy numer projektu dewelopera w czytelnej i normalnej formie. Oznacza to, że klient zobaczy inny zestaw identyfikatorów data_stream_id niż inny klient z innymi danymi logowania.

dataStreamName string Nazwa strumienia jednoznacznie identyfikuje to konkretne źródło danych wśród innych źródeł danych tego samego typu od tego samego producenta. Ustawienie nazwy strumienia jest opcjonalne, ale należy je wykonywać, gdy aplikacja udostępnia 2 strumienie dla tego samego typu danych lub gdy urządzenie ma 2 równoważne czujniki.
dataType nested object Typ danych określa schemat strumienia danych, które są zbierane przez interfejs Fitness API, wstawiane do niego lub odbierane z niego.
dataType.field[] list Pole reprezentuje jeden wymiar typu danych.
dataType.field[].format string Różne obsługiwane formaty dla każdego pola w typie danych.

Akceptowane wartości:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string Określa nazwę i format danych. W przeciwieństwie do nazw typów danych nazwy pól nie mają przestrzeni nazw i muszą być tylko unikalne w obrębie danego typu danych.
dataType.field[].optional boolean
dataType.name string Każdy typ danych ma unikalną nazwę z przestrzenią nazw. W ramach platformy udostępniane są wszystkie typy danych znajdujące się w przestrzeni nazw com.google.
device nested object Przedstawienie zintegrowanego urządzenia (np. telefonu lub urządzenia do noszenia), które może przechowywać czujniki.
device.manufacturer string Producent produktu lub sprzętu.
device.model string Nazwa modelu urządzenia widoczna dla użytkownika.
device.type string Stała reprezentująca typ urządzenia.

Akceptowane wartości:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string Numer seryjny lub inny unikalny identyfikator sprzętu. To pole jest zaciemniane podczas odczytu przez dowolnego klienta REST lub Androida, który nie utworzył źródła danych. Pole UID będzie widoczne tylko dla twórcy źródła danych.

Zaciemnianie kodu zachowuje równość, czyli gdy podano 2 identyfikatory, jeśli id1 == id2, zaciemniony(id1) == zaciemniony(id2).

device.version string Ciąg znaków wersji sprzętu/oprogramowania urządzenia.
name string Nazwa tego źródła danych widoczna dla użytkownika.
type string Stała opisująca typ tego źródła danych. Wskazuje, czy to źródło danych generuje dane nieprzetworzone czy pochodne.

Akceptowane wartości:
  • "derived"
  • "raw"

Metody

create (utwórz)
Tworzy nowe źródło danych, które będzie unikalne we wszystkich źródłach danych należących do tego użytkownika.

Źródło danych to niepowtarzalne źródło danych z czujnika. Źródła danych mogą udostępniać nieprzetworzone dane pochodzące z czujników sprzętowych na urządzeniach lokalnych lub towarzyszących. Mogą też udostępniać dane pochodne utworzone przez przekształcenie lub scalanie innych źródeł danych. Ten sam typ danych może obejmować wiele źródeł danych. Każdy punkt danych w każdym zbiorze danych wstawiony do interfejsu Fitness API lub z niego odczytywany ma powiązane źródło danych.

Każde źródło danych generuje unikalny strumień aktualizacji zbioru danych z unikalnym identyfikatorem źródła danych. Nie wszystkie zmiany w źródle danych wpływają na identyfikator strumienia danych. Dlatego informacje zbierane przez zaktualizowane wersje tej samej aplikacji lub tego samego urządzenia można nadal uznać za należące do tego samego źródła.

Źródła danych są identyfikowane za pomocą ciągu tekstowego wygenerowanego przez serwer na podstawie treści tworzonego źródła. Podczas wywoływania tej metody nie należy ustawiać pola dataStreamId. Zostanie on automatycznie wygenerowany przez serwer w prawidłowym formacie. Jeśli ustawiono dataStreamId, musi on być zgodny z formatem wygenerowanym przez serwer. Ten format stanowi kombinację niektórych pól ze źródła danych i ma określoną kolejność. Jeśli te dane nie są zgodne, żądanie zakończy się błędem.

Wskazanie nieznanego typu danych (zaczynającego się od „com.google.”) spowoduje utworzenie źródła danych z niestandardowym typem danych. Niestandardowe typy danych są odczytywane tylko przez aplikację, która je utworzyła. Niestandardowe typy danych są wycofane. Zamiast nich używaj standardowych typów danych.

Oprócz pól źródła danych uwzględnionych w identyfikatorze źródła danych podany jest też numer projektu dewelopera, który jest uwierzytelniany podczas tworzenia źródła danych. Ten numer projektu dewelopera jest zaciemniony podczas odczytywania innego programisty, który odczytuje typy danych publicznych.
usuń
Usuwa określone źródło danych. Żądanie się nie powiedzie, jeśli źródło danych zawiera jakiekolwiek punkty danych.
pobierz
Zwraca określone źródło danych.
list
Lista wszystkich źródeł danych, które są widoczne dla dewelopera przy użyciu podanych zakresów OAuth. Lista nie jest pełna. Użytkownik może mieć prywatne źródła danych, które są widoczne tylko dla innych deweloperów, lub wywołania używające innych zakresów.
aktualizacja
Aktualizuje określone źródło danych. Nie można modyfikować właściwości dataStreamId, dataType, type, dataStreamName i device (z wyjątkiem właściwości version).

Źródła danych są identyfikowane za pomocą atrybutu dataStreamId.