Sesje

Sesje to sposób na szybkie i łatwe wyświetlenie listy wszystkich głównych działań wykonanych przez użytkowników. Pojawiają się one na stronie dziennika w aplikacji Google Fit. Na przykład sesja oddechowa, spacer, bieg lub sen to przykłady sesji.

Sesje grupują zbiory danych z określonego przedziału czasu, które zostały zebrane podczas aktywności. Jeśli np. użytkownik śledzi czas rozpoczęcia i zakończenia 3-kilometrowego biegu, można utworzyć sesję, a wszystkie dane o aktywności fizycznej z tego okresu (np. liczba kroków, prędkość, dystans) zostaną z nią powiązane.

Same sesje nie zawierają szczegółów aktywności. Jest to w zbiorze danych. Sesje mają te właściwości:

  • Opisowa, przyjazna nazwa (np. „poranny bieg”)
  • tekst reklamy,
  • unikalny identyfikator,
  • Rodzaj aktywności, którą rejestruje (np. bieg).

Zalety korzystania z sesji

  • Przydatne dla użytkowników: sesje pomagają użytkownikom porządkować dane o aktywności i treningach w sensowny sposób. Wszystkie swoje aktywności z danego dnia mogą zobaczyć na stronie Dziennik w aplikacji Google Fit.
  • Spójne wrażenia użytkownika: jeśli aplikacja lub urządzenie towarzyszące umożliwia śledzenie aktywności (użytkownicy mogą rozpoczynać i kończyć aktywność), sesje tych treningów pozwalają użytkownikom wyświetlać aktywność w obu aplikacjach.
  • Pełniejsze dane: Google Fit łączy też dane z wielu źródeł, aby uzupełniać i wzbogacać informacje o sesji. Dzięki temu użytkownicy uzyskują pełniejszy obraz swojej aktywności.
  • Korzystaj z platformy Google Fit: jeśli użytkownicy nie śledzą swojej aktywności lub Twoja aplikacja nie obsługuje śledzenia, nadal możesz odczytywać sesje w Google Fit. Możesz wysyłać zapytania o szczegółowe lub zagregowane dane z usługi fitness i wyszukiwać dostępne sesje bez konieczności wdrażania własnego schematu i pamięci.
  • Większe zaangażowanie użytkowników: możesz wyświetlać użytkownikom dostępne sesje i aplikacje, które je utworzyły. Wchodzenie w interakcje z innymi aplikacjami do ćwiczeń w ten sposób może zwiększyć zaangażowanie użytkowników.

Uzyskiwanie autoryzacji użytkownika w przypadku sesji

Jeśli chcesz odczytywać lub zapisywać sesje, musisz uzyskać zgodę użytkownika. Dostęp do sesji wykorzystuje te same zakresy autoryzacji co typy danych. Musisz o nie poprosić w ten sposób:

Android

Określ, do jakiego typu sesji aplikacja potrzebuje dostępu, używając odpowiednich metod z FitnessOptions. Aby na przykład odczytać sesje związane z bieganiem, możesz wybrać:

    val fitnessOptions = FitnessOptions.builder()
        .accessActivitySessions(FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
        .build()

Ten przykład pokazuje, że aplikacja chce mieć dostęp do metadanych sesji aktywności, a także określa typy danych, które chce odczytywać w ramach tych sesji. W tym przykładzie używane są typy danych tętna, prędkości i lokalizacji.

REST

Poproś o zakresy w ten sposób:

  • Sesje z typami aktywności związanymi ze snem:
    • https://www.googleapis.com/auth/fitness.sleep.read
    • https://www.googleapis.com/auth/fitness.sleep.write
  • Wszystkie pozostałe sesje:
    • https://www.googleapis.com/auth/fitness.activity.read
    • https://www.googleapis.com/auth/fitness.activity.write

Korzystanie z sesji

Android

Za pomocą interfejsu Sessions API możesz:

  • Tworzenie sesji w czasie rzeczywistym
  • Wstawianie sesji do magazynu informacji o aktywności fizycznej
  • Wstawianie segmentów aktywności, aby uwzględniać przerwy podczas treningów
  • Odczytywanie sesji i powiązanych z nimi zbiorów danych
  • Uruchamianie innej aplikacji w celu wyświetlenia informacji o utworzonej przez nią sesji
  • Otrzymywanie intencji, gdy inna aplikacja rozpoczyna sesję

REST

Za pomocą interfejsu Sessions API możesz:

  • Tworzenie sesji w czasie rzeczywistym
  • Wstawianie sesji do magazynu informacji o aktywności fizycznej
  • Wstawianie segmentów aktywności, aby uwzględniać przerwy podczas treningów
  • Odczytywanie sesji i powiązanych z nimi zbiorów danych

Jak zbiory danych i segmenty współdziałają z sesjami

W Google Fit:

  • Zbiór danych to zestaw punktów danych z określonego źródła danychokreślonego przedziału czasu. Zbiory danych można wstawiać osobno. Jeśli jednak tworzysz sesję, łatwiej będzie utworzyć ją razem ze zbiorami danych.
  • Segment grupuje zbiory danych w sesji według dokładnej aktywności użytkownika w sesji. Jeśli na przykład użytkownik śledzi 30-minutowy bieg (sesję), ale w jego trakcie przez jakiś czas szedł, można to podzielić na segmenty. Będzie to segment biegu, potem przerwa na marsz, a następnie znowu bieg.
Ilustracja 1. Różne aplikacje dodają sesje i zbiory danych do [magazynu danych o aktywności fizycznej].

Rysunek 1 przedstawia przedział czasu w sklepie z aplikacjami fitness, w którym aplikacje A, B i C wstawiają niektóre zbiory danych i sesje:

  • Aplikacja A wstawiła zbiory danych A1 i A2 razem z sesją 1, a zbiór A3 niezależnie od sesji.
  • Aplikacja B wstawia zbiory danych B1 i B2 wraz z sesją 2.
  • Aplikacja C wstawia zbiór danych C1 niezależnie od sesji.

Podczas odczytywania danych sesji z usługi fitness wszystkie dane fitness mieszczące się w przedziale czasu sesji są automatycznie powiązane z tą sesją, nawet jeśli wstawisz dane po utworzeniu sesji lub utworzysz sesję po pasywnym śledzeniu danych. Na przykład zapytanie o dane dotyczące aktywności fizycznej z sesji 1 zwróci:

  • Zbiór danych A1
  • Zbiór danych A2
  • Część zbioru danych A3 między t1 a t2
  • część zbioru danych C1 między t1 a t2;

Możesz sprawdzić, która aplikacja wstawiała poszczególne sesje i zbiory danych.

Tworzenie sesji

Sesje można tworzyć na kilka sposobów:

  • Aplikacja może aktywnie tworzyć sesję w 
    • w czasie rzeczywistym, gdy użytkownik aktywnie śledzi aktywność na urządzeniu (tylko Android);
    • ręcznie wstawiając go.
  • Gdy użytkownik ręcznie doda trening lub aktywność w aplikacji Google Fit.

Kiedy tworzyć sesję

Czy dodajesz dane o śnie?

  • Tak – utwórz sesję i ręcznie wstaw ją do magazynu informacji o aktywności fizycznej. Na przykład wstawianie sesji snu. Dzieje się tak, ponieważ użytkownicy aplikacji lub urządzeń do monitorowania snu nie wchodzą w interakcję z urządzeniami, aby rozpocząć i zakończyć aktywność związaną ze snem (jest ona śledzona pasywnie).
  • Nie – czy Twoja aplikacja umożliwia użytkownikom rozpoczynanie i zatrzymywanie aktywności?

Sesje czytania

Aplikacja może odczytywać sesje na kilka sposobów:

  • Wyszukaj konkretną sesję utworzoną lub wstawioną przez:
    • Nazwa lub
    • Identyfikator
  • Sprawdź wszystkie utworzone lub wstawione sesje według okresu.
  • Wyszukiwanie wszystkich dostępnych sesji utworzonych przez wszystkie aplikacje (w tym Google Fit) według okresu

Dowiedz się, które źródła utworzyły sesję

Możesz pokazać użytkownikom, która aplikacja lub urządzenie utworzyło każdą z ich sesji. Każda sesja jest powiązana ze źródłem danych, które zawiera informacje o aplikacji lub urządzeniu, z którego pochodzą dane lub w którym zostały przekształcone.

Android

Obecnie możesz uzyskać nazwę pakietu sesji zapisanej przez klienta Androida. Aby uzyskać nazwę pakietu aplikacji, która utworzyła sesję, użyj metody getAppPackageName. Możesz użyć tych informacji w aplikacji, aby pokazywać użytkownikom, które inne aplikacje wstawiały sesje aktywności. Możesz wyświetlać ikonę każdej z tych aplikacji, aby ułatwić użytkownikom ich rozpoznawanie.

Możesz też wysłać intencję, aby uruchomić inne aplikacje i wyświetlić szczegóły utworzonych przez nie sesji. Inne aplikacje mogą też wysyłać intencję uruchomienia Twojej aplikacji.

Dowiedz się więcej o znajdowaniu źródła, które utworzyło sesję.

REST

Aby uzyskać nazwę pakietu aplikacji na Androida, która utworzyła sesje, użyj właściwości session.application. W przypadku sesji utworzonych za pomocą interfejsu API REST użyj właściwości session.name. Te informacje możesz wykorzystać w aplikacji, aby pokazywać użytkownikom, które inne aplikacje wstawiały sesje fitness. Możesz wyświetlać ikony każdej z tych aplikacji, aby ułatwić użytkownikom ich rozpoznawanie.

Dowiedz się więcej o znajdowaniu źródła, które utworzyło sesję.