Stan

  
tworzyć wydajne aplikacje związane ze zdrowiem w sposób niezależny od platformy;
Najnowsza aktualizacja Wersja stabilna Wersja kandydująca do publikacji Wersja beta Wersja Alfa
11 lutego 2026 r. 1.0.0 - 1.1.0-beta01 -

Deklarowanie zależności

Aby dodać zależność od funkcji dotyczących zdrowia, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule Repozytorium Maven Google.

Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:

Groovy

dependencies {
    implementation "androidx.health:health-services-client:1.1.0-beta01"
}

Kotlin

dependencies {
    implementation("androidx.health:health-services-client:1.1.0-beta01")
}

Opinia

Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nowy problem, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz oddać głos na istniejący problem, klikając przycisk gwiazdki.

Tworzenie nowego problemu

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Health Connect Client w wersji 1.0

Wersja 1.0.0-alpha04

24 sierpnia 2022 r.

W wersji 1.0.0-alpha04 element androidx.health:health-connect-client został przeniesiony do androidx.health.connect:connect-client. W przypadku przyszłych wersji używaj symbolu androidx.health.connect:connect-client i powiązanych informacji o wersji na naszej stronie Health Connect.

Aby przeprowadzić migrację, wystarczy zmienić import zależności z androidx.health:health-connect-client:1.0.0-alpha03 na androidx.health.connect:connect-client:1.0.0-alpha04.

Wersja 1.0.0-alpha03

27 lipca 2022 roku

Publikacja androidx.health:health-connect-client:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.

Nowe funkcje

  • Podsumowanie nowych zmian w interfejsie API: do interfejsów API odczytu, zapisu i zbiorczych dodano zestaw jednostek. Aplikacje mogą teraz pobierać lub zapisywać rekordy w wybranej jednostce, np. w przypadku NutritionRecord składników odżywczych w gramach lub miligramach.

Zmiany w interfejsie API

  • Popraw List<DataOrigin> na Set<DataOrigin> w różnych obiektach odpowiedzi na żądanie. (I42342)
  • Poprawiono jednostkę podstawowej liczby spalonych kalorii z Moc –> Energia. (I0b429)
  • Przeniesiono przykładowe zajęcia z serii do rekordów serii (Ica9bb):
    • CyclingPedalingCadence -> CyclingPedalingCadenceRecord.Sample
    • HeartRate -> HeartRateRecord.Sample
    • StepsCadence -> StepsCadenceRecord.Sample
  • Wycofaj klasę HealthDataRequestPermission na rzecz klasy PermissionController.createRequestPermissionActivityContract. Zwiększy to widoczność i ujednolici parametryzację. (I81e7f)
  • Dodano amerykańskie uncje płynu do kategorii Objętość. (I5f03d)
  • Dodano typ jednostki prędkości (I1d574)
  • Dodano typ jednostki procentowej (I08f23)
  • Dodano typ jednostki ciśnienia (Ifb01f).
  • Dodano typ jednostki masy (Ifd81a).
  • Dodano typ jednostki objętości (I59ad1)
  • Dodano typ jednostki zasilającej. Przeniesiono przykładową klasę serii Power do klasy PowerRecord. (I5b1e5)
  • Dodano typ jednostki energii (I983ae)
  • Dodano typ jednostki temperatury (I4cdb5)
  • Zmień nazwy odwołań do aktywności, aby były bardziej szczegółowe w odniesieniu do ćwiczeń, w tym (I3f936):
    • Nazwa ActivityLap została zmieniona na ExerciseLapRecord
    • Nazwa ActivityEvent została zmieniona na ExerciseEventRecord
    • Nazwa Repetitions została zmieniona na ExerciseRepetitionsRecord
    • Nazwa ActivitySession została zmieniona na ExerciseSessionRecord
  • Przeniesiono metadane pakietu zagnieżdżone w rekordach. (Ie0835)
  • Jednostka długości używana we wszystkich pozostałych rekordach (Ib10dd):
    • ActivityLapRecord
    • ElevationGainedRecord
    • HeightRecord
    • HipCircumferenceRecord
    • WaistCircumferenceRecord
  • Dodano typ jednostki długości (Idae39)
  • Zaktualizuj terminologię opisu CervicalMucus (I25a2b):
    • CervicalMucus.Amount -> CervicalMucusRecord.Texture
    • CervicalMucus.Appearance -> CervicalMucusRecord.Sensation
  • Dodano sufiks „Record” do wszystkich nazw klas rekordów (I1ffc2)

Poprawki błędów

  • Rozwiązaliśmy problemy z Proguardem, gdy biblioteka jest tworzona w wersji produkcyjnej i wartość parametru minifyEnabled to „true”. (I78933)
  • Ukrywa dokumentację, która nie jest przeznaczona do użytku publicznego. (I7a08f)
  • Rozwiązuje problem u klientów, którzy mogą mieć własne zależności protobuf.(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)

Wersja 1.0.0-alpha02

1 czerwca 2022 r.

Publikacja androidx.health:health-connect-client:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.

Zmiany w interfejsie API

  • Wycofano operatory hasMetricgetMetric w wersji AggregationResult, dodano operatory zawiera i pobierz (I7cc7c)
  • Dodaje OvulationTest.Result.HIGH i OvulationTest.Result.INCONCLUSIVE. (I9f9c4)

Poprawki błędów

  • Zmniejsz wymagania dotyczące pakietu SDK do poziomu 26. (I6d201)

Wersja 1.0.0-alpha01

11 maja 2022 roku

Publikacja androidx.health:health-connect-client:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.

Nowe funkcje

  • Interfejs API do odczytywania danych o aktywności fizycznej i stanie zdrowia udostępnianych przez inne aplikacje.
  • Interfejs API do zapisywania danych o aktywności fizycznej i zdrowiu, które można udostępniać innym aplikacjom.
  • Interfejs API do pobierania zagregowanych danych o dostępnych rekordach.
  • Interfejs API do pobierania przyrostowych zmian (wstawiania, aktualizowania lub usuwania) rekordów przez inne aplikacje.
  • Interfejs API do wyświetlania użytkownikom prośby o przyznanie uprawnień związanych ze zdrowiem.
  • Interfejs API do sprawdzania uprawnień lub cofania przyznanych uprawnień dotyczących zdrowia.

Wersja 1.1 klienta usług zdrowotnych

Wersja 1.1.0-beta01

11 lutego 2026 r.

androidx.health:health-services-client:1.1.0-beta01, androidx.health:health-services-client-external-protobuf:1.1.0-beta01androidx.health:health-services-client-proto:1.1.0-beta01 są dostępne. Wersja 1.1.0-beta01 nie zawiera zmian w porównaniu z poprzednią wersją alfa.

Wersja 1.1.0-alpha05

11 grudnia 2024 r.

androidx.health:health-services-client:1.1.0-alpha05, androidx.health:health-services-client-external-protobuf:1.1.0-alpha05androidx.health:health-services-client-proto:1.1.0-alpha05 są dostępne. Wersja 1.1.0-alpha05 zawiera te zmiany.

Nowe funkcje

  • Zawiera teraz reguły ProGuard, które zapobiegają usuwaniu niezbędnych klas. (65d0c3f)

Poprawki błędów

  • Ta biblioteka korzysta teraz z adnotacji o wartości null JSpecify, które są używane w typie. Aby wymusić prawidłowe użycie, deweloperzy Kotlin powinni użyć tego argumentu kompilatora: -Xjspecify-annotations=strict (jest to domyślny argument począwszy od wersji 2.1.0 kompilatora Kotlin). (Iaf73a, b/326456246)

Wersja 1.1.0-alpha04

16 października 2024 r.

androidx.health:health-services-client:1.1.0-alpha04, androidx.health:health-services-client-external-protobuf:1.1.0-alpha04androidx.health:health-services-client-proto:1.1.0-alpha04 są dostępne. Wersja 1.1.0-alpha04 zawiera te zmiany.

Poprawki zabezpieczeń

  • Od tej zmiany androidx jest kompilowany z użyciem protobuf w wersji 4.28.2, aby rozwiązać problem CVE-2024-7254. Aby wyeliminować ryzyko związane z luką w zabezpieczeniach, zaktualizuj zależność od androidx.health:health-services-client do najnowszej wersji 1.1.0-alpha04.

Wersja 1.1.0-alpha02

13 grudnia 2023 r.

Publikacja androidx.health:health-services-client:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.

Zmiany w interfejsie API

  • Używaj jednego źródła wiarygodnych danych w przypadku obsługiwanych ExerciseEvent. (I03308)

Poprawki błędów

  • Drobne poprawki błędów i ulepszenia dokumentacji.

Wersja 1.1.0-alpha01

9 sierpnia 2023 r.

Publikacja androidx.health:health-services-client:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • ExerciseEvent Interfejsy API zostały dodane wraz z pierwszym konkretnym zdarzeniem: GolfShotEvent. ExerciseEvent Primitives umożliwiają programistom sprawdzanie obsługi i wysyłanie żądań powiadomień, gdy zegarek wykryje jakieś zdarzenie. GolfShotEvent umożliwia deweloperom otrzymywanie powiadomień, gdy użytkownik wykonuje uderzenie golfowe, a także informacji o rozpoznanym rodzaju zamachu.

Zmiany w interfejsie API

  • umożliwiać klientom pakietu WHS SDK korzystanie z funkcji GolfShotEvent; (I76b03)

Poprawki błędów

  • Zamiast agresywnie zgłaszać wyjątki w przypadku wykrycia nieznanych możliwości zdarzenia związanego z ćwiczeniami, odfiltruj je z listy. (I06afc)

Wersja klienta usług zdrowotnych 1.0

Wersja 1.0.0

7 maja 2025 r.

Publikacja androidx.health:health-services-client:1.0.0 Wersja 1.0.0 zawiera te zmiany.

Główne funkcje wersji 1.0.0

  • Jest to promocja wersji 1.0.0-rc02 do stabilnej wersji klienta usług zdrowotnych. W porównaniu z wersją 1.0.0-rc02 nie wprowadziliśmy żadnych zmian.

Wersja 1.1.0-alpha03

14 maja 2024 r.

Publikacja androidx.health:health-services-client:1.1.0-alpha03 Wersja 1.1.0-alpha03 zawiera te zmiany.

Nowe funkcje

  • Wprowadzono DebouncedGoal interfejsy API, które umożliwiają śledzenie celu dla typu danych próbnych lub typu danych próbnych statystyk podczas ćwiczeń z funkcjami zapobiegającymi drganiom(initialDelaydurationAtThreshold). (I09be9)
  • Dodaliśmy przykładowe zaawansowane dane dotyczące biegu i statystyczne DataTypes. (I0b8b5):
    • Ground Contact Time
    • Vertical Oscillation
    • Vertical Ratio
    • Stride Length

Zmiany w interfejsie API

  • Dodano ELEVATION_GAIN_DAILY DataType. (I059d1)
  • Dodano SWIM_LAP_COUNT_TOTAL DataType jako zagregowany DataType dla SWIM_LAP_COUNT. (I0beeb)

Poprawki błędów

  • Usunęliśmy różne problemy, aby zwiększyć niezawodność komunikacji międzyprocesowej.

Wersja 1.0.0-rc02

3 kwietnia 2024 r.

Publikacja androidx.health:health-services-client:1.0.0-rc02 Wersja 1.0.0-rc02 zawiera te zmiany. Ta wersja zawiera tylko poprawki błędów i nie wprowadza zmian w interfejsie API.

Poprawki błędów

  • Usunięto różne problemy, aby zwiększyć niezawodność komunikacji międzyprocesowej.
  • Rozwiązaliśmy problem, który powodował, że wywołanie funkcji startExercise w tym samym czasie co prepareExercise mogło prowadzić do błędu ConcurrentModificationException (4e37773).
  • Ulepszona dokumentacja

Wersja 1.0.0-rc01

26 lipca 2023 r.

Publikacja androidx.health:health-services-client:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zatwierdzenia.

Nowe funkcje

  • Usługi dotyczące zdrowia zostały przeniesione do wersji 1.0.0-rc01 po ustabilizowaniu się w wersji beta.

Zmiany w interfejsie API

  • Połączone pliki publicznych i eksperymentalnych interfejsów API dla ścieżek od h do m. (Ic4630, b/278769092)
  • Nie dotyczy, zmiany w pliku API polegają tylko na zmianie kolejności metod. (I5fa95)

Wersja 1.0.0-beta03

5 kwietnia 2023 r.

Publikacja androidx.health:health-services-client:1.0.0-beta03 Wersja 1.0.0-beta03 zawiera te zatwierdzenia.

Nowe funkcje

BatchingMode można teraz skonfigurować tak, aby podczas aktywnego ćwiczenia dostarczał dane o ćwiczeniach w pakietach w skonfigurowanym interwale zamiast domyślnego. Można to zrobić na początku ćwiczenia za pomocą ExerciseConfig lub w trakcie ćwiczenia za pomocą metody zastępowania. Obsługa tej funkcji zostanie włączona w kolejnej wersji Usług zdrowotnych w Sklepie Google Play. Możesz sprawdzić, czy jest dostępna, korzystając z funkcji ćwiczeń. Uwaga: tryby przetwarzania wsadowego działają, gdy urządzenie jest w stanie nieinteraktywnym, i powodują zwiększone zużycie energii.

Zmiany w interfejsie API

  • Wywoływanie HealthServicesException, gdy funkcja zawieszania overrideBatchingModesForActiveExercise nie działa (Ifd387)
  • Wprowadzono funkcje zawieszania dla asynchronicznego interfejsu overrideBatchingModesForActiveExercise API, dzięki czemu jest on bardziej przyjazny dla języka Kotlin (I7dd15).
  • BatchingMode zastępuje opcjonalne w ExerciseConfig (Id22e9)

Poprawki błędów

  • DataTypeExerciseUpdate drobne poprawki (5e185f)

Wersja 1.0.0-beta02

11 stycznia 2023 r.

Publikacja androidx.health:health-services-client:1.0.0-beta02 Wersja 1.0.0-beta02 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodano suspend funkcje rozszerzenia do istniejących asynchronicznych interfejsów API ListenableFutureExerciseClient, PassiveMonitoringClientMeasureClient, aby zapewnić lepszą obsługę języka Kotlin. (Iadea4)
  • Dodano interfejs API ExerciseTypeConfig, który umożliwia aktualizacje podczas trwającego ćwiczenia. Dodano GolfExerciseTypeConfig, aby umożliwić aktualizowanie ExerciseTypeConfig podczas ćwiczeń golfowych. (I4c539)

Zmiany w interfejsie API

  • Zgłaszanie wyjątku HealthServicesException w funkcjach zawieszania (I5e509)
  • Dodanie kolejnego konstruktora w celu zapewnienia zgodności wstecznej (Iddeda)
  • Zgłaszanie wyjątku RuntimeException w funkcjach zawieszania (I53bca)
  • Usuwanie domyślnej implementacji zgłaszania wyjątku (Id947f)
  • Dodawanie adnotacji @JvmDefaultWithCompatibility (I8f206)

Poprawki błędów

  • Dodaj do kdoc, aby zwiększyć przejrzystość (Ide285)
  • Zezwalaj na śledzenie pasywne w przypadku celów tylko wtedy, gdy śledzone są też te same typy danych (Ibed8d)

Wersja 1.0.0-beta01

24 października 2022 r.

Publikacja androidx.health:health-services-client:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodaliśmy możliwość nasłuchiwania zdarzeń związanych ze zdrowiem za pomocą PassiveMonitoringClient. Pierwszym zdarzeniem jest: HealthEvent.FALL_DETECTED.

  • Nowe typy ćwiczeń:

    • ALPINE_SKIING
    • BACKPACKING
    • CROSS_COUNTRY_SKIING
    • HORSE_RIDING
    • INLINE_SKATING
    • MOUNTAIN_BIKING
    • ORIENTEERING
    • ROLLER_SKATING
    • YACHTING
  • Nowe typy danych:

    • ELEVATION_LOSS
    • GOLF_SHOT_COUNT

Zmiany w interfejsie API

  • Zaktualizowano sposób modelowania danych: zmieniliśmy model danych oraz sposób reprezentowania DataType, DataPoint i ich wartości. Najważniejszy efekt to to, że interfejsy API są teraz znacznie bardziej jednoznaczne i bezpieczne pod względem typów.
  • Lokalizacje DataPoint nie są już reprezentowane jako DoubleArray, ale jako obiekt LocationData o ściśle określonym typie.
  • Przeniesiono do nowego zestawu interfejsów API pasywnego odbiornika:
    • Transmisja została zastąpiona PassiveListenerService.
    • Dotychczasowi słuchacze zostali zastąpieni jednym słuchaczem: PassiveListenerCallback.
  • Dodano tag <queries> do pliku manifestu Usług zdrowotnych, aby aplikacje nie musiały już określać tego w swoim pliku manifestu (pod warunkiem, że w systemie kompilacji włączono scalanie plików manifestu).
  • Usunęliśmy wiele ExerciseState, aby oznaczyć zakończenie ćwiczenia, i dodaliśmy nowe stany ćwiczeń ENDINGENDED. Są one teraz łączone z ExerciseEndReason, aby reprezentować pełny zakres poprzednich stanów.
  • Zmieniliśmy nazwę PassiveListenerConfig setPassiveGoals na setDailyGoals, aby lepiej odzwierciedlała fakt, że obsługujemy tylko dzienne cele pasywne.
  • PassiveGoal jest teraz zawsze REPEATED, pasywny TriggerFrequency został usunięty.
  • Wszystkie parametry LongDouble zostały oznaczone adnotacjami za pomocą parametru @FloatRange.
  • Dodano właściwość swimmingPoolLengthMeters do ExerciseConfig, którą można opcjonalnie określić, aby poprawić obliczenia odległości podczas pływania w basenie.
  • Wycofano ExerciseUpdate.activeDuration. Zamiast niej używaj zasady ExerciseUpdate.activeDurationCheckpoint.
  • Zmieniliśmy nazwę interfejsu API flushExerciseAsync() na flushAsync()ExerciseClient.
  • Nazwa elementu została zmieniona z „Measure.registerCallback” na „Measure.registerMeasureCallback”.
  • Ogólne zmiany nazw:
    • Właściwości odległości mają teraz sufiks meters.
    • Nazwy metod wywołania zwrotnego są teraz w czasie przeszłym.
    • Większość skrótów została usunięta (HrAccuracy to teraz HeartRateAccuracy).
    • Właściwości zgodne ze wzorcem enableFoo mają teraz nazwę isFooEnabled.
  • Przeniesiono z wyliczeń.
  • Godziny oznaczone jako Double są teraz oznaczone jako Duration.
  • Funkcje zwracające wartość ListenableFuture<Void?> zwracają teraz wartość ListenableFuture<Void>.
  • Funkcje, które akceptują wywołanie zwrotne, zawsze mają je jako ostatni parametr.
  • Klasy z konstruktorami mają teraz zawsze konstruktory publiczne.
  • Funkcje rejestracji nie zwracają już wartości ListenableFuture, ale przekazują stan rejestracji do podanego wywołania zwrotnego.
  • Dokumentacja KDoc została ulepszona.
  • Klasy publiczne nie są już rozszerzane o ProtoParcelable.

Poprawki błędów

  • Ogólne ulepszenia niezawodności IPC (I3b1e2)

Wersja 1.0.0-alpha03

3 listopada 2021 r.

Publikacja androidx.health:health-services-client:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.

Nowe funkcje

  • W przypadku zerwania połączenia IPC z pakietem APK Usług zdrowotnych pakiet SDK automatycznie ponownie zarejestruje żądania rejestracji pomiarów, odbiornika ćwiczeń i wywołania zwrotnego pasywnego monitorowania.

Zmiany w interfejsie API

  • Wartość minSdkVersion biblioteki pakietu SDK została zwiększona do poziomu API 30, ponieważ klient usług związanych ze zdrowiem jest obecnie obsługiwany tylko na urządzeniach Wear3.

Wersja 1.0.0-alpha02

29 września 2021 r.

Publikacja androidx.health:health-services-client:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.

Zmiany w interfejsie API

  • ExerciseClient obsługuje teraz przygotowywanie ćwiczeń. Umożliwia to klientom rozgrzanie czujników i poczekanie na takie rzeczy jak ustalenie pozycji GPS przed rozpoczęciem ćwiczeń.
  • Wprowadzamy klasy CumulativeDataPoints i StatisticalDataPoints AggregateDataPoint, aby lepiej modelować zagregowane dane śledzone podczas aktywnego ćwiczenia. Klasa CumulativeDataPoints zawiera wartości skumulowane zagregowanych typów danych interwałowych (np. całkowity dystans podczas ćwiczenia), a klasa StatisticalDataPoints modeluje agregacje próbkowanych punktów danych (np. minimalne, maksymalne i średnie tętno). Zastępuje to poprzedni element AGGREGATE_* DataTypes i jest dostępne w obiekcie ExerciseUpdate za pomocą getLatestAggregateMetrics(). Typy danych AGGREGATE_* nie są już obsługiwane.
  • PassiveMonitoring Zdarzenia zostały zmienione na PassiveGoals, które obsługuje ustawianie celów i otrzymywanie powiadomień o ich osiągnięciu w przypadku typów danych takich jak dane dzienne (np. DAILY_STEPS).
  • Ulepszone modelowanie dokładności i dostępności tętna oraz lokalizacji dzięki wprowadzeniu nowych klas HrAccuracy, LocationAccuracy i LocationAvailability.
  • Ulepszone nazewnictwo pól ExerciseConfig i nowe pola PassiveMonitoringConfig oraz wprowadzenie pola ExerciseConfig.shouldEnableGps do wysyłania próśb o dane oparte na GPS

Poprawki błędów

  • Przeniesienie do transportu IPC opartego na protokole w celu lepszej obsługi zgodności wstecznej

Wersja 1.0.0-alpha01

18 maja 2021 r.

Publikacja androidx.health:health-services-client:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.

Funkcje pierwszej wersji

Biblioteka Usług zdrowotnych udostępnia deweloperom jednolity zestaw interfejsów API do integracji z implementacjami czujników na konkretnych urządzeniach. Będzie działać od razu na emulatorach Wear OS 3 i przyszłych urządzeniach. W przyszłości dodamy obsługę kolejnych platform. W tej pierwszej wersji udostępniamy 3 interfejsy API najwyższego poziomu: ExerciseClient, PassiveMonitoringClientMeasureClient.

ExerciseClient

ExerciseClient jest przeznaczony dla aplikacji śledzących aktywne treningi. Obejmuje do 82 różnych ExerciseType, od chodzenia i biegania po taniec i piłkę wodną. Podczas śledzenia tych ćwiczeń dostępnych jest 50 różnych DataType w zależności od rodzaju ćwiczenia i sprzętu dostępnego na urządzeniu. Aby rozpocząć, podaj odpowiednie informacje w ExerciseConfig, wywołaj exerciseClient.startExercise i sprawdź postępy w nasłuchiwaniu aktualizacji.

PassiveMonitoringClient

PassiveMonitoringClient to świetny wybór, jeśli aplikacja śledzi aktywność użytkownika przez cały dzień. Możesz zarejestrować PendingIntent z zestawem DataType i otrzymywać powiadomienia o zmianach zbiorczych. Możesz też określić Event, np. osiągnięcie określonej liczby kroków.

MeasureClient

Czasami użytkownik musi zmierzyć np. tętno w danym momencie, a nie podczas ćwiczeń ani przez cały dzień. W takich sytuacjach MeasureClient jest idealnym rozwiązaniem.Wystarczy zarejestrować wywołanie zwrotne w obsługiwanych DataType, aby otrzymywać strumień danych, a następnie wyrejestrować je, gdy nie będzie już potrzebne.