Zdrowie
Najnowsza aktualizacja | Wersja stabilna | Kandydat do publikacji | Wersja Beta | Wersja alfa |
---|---|---|---|---|
14 maja 2024 r. | - | 1.0.0-rc02, | - | 1.1.0-alfa03 |
Deklarowanie zależności
Aby dodać zależność od Health, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Google Maven.
W pliku build.gradle
aplikacji lub modułu dodaj zależności artefaktów, których potrzebujesz:
Groovy
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
Opinia
Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli znajdziesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj problemy z tą biblioteką. Możesz oddać głos w ramach istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.0 klienta Health Connect
Wersja 1.0.0-alfa04
24 sierpnia 2022 r.
Od 1.0.0 do alfa04: androidx.health:health-connect-client
została przeniesiona do androidx.health.connect:connect-client
. W przypadku kolejnych wersji korzystaj z informacji o androidx.health.connect:connect-client
i powiązanych informacji o wersji na stronie Health Connect.
Aby przeprowadzić migrację, po prostu zmień importowanie 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-alfa03
27 lipca 2022 roku
Aplikacja androidx.health:health-connect-client:1.0.0-alpha03
została zwolniona. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Podsumowanie nowych zmian w interfejsie API: do interfejsów API do odczytu, zapisu i agregacji dodano zestaw jednostek. Aplikacje mogą teraz pobierać lub zapisywać rekordy przy użyciu wybranych jednostek, takich jak gramy czy miligramy dla składników odżywczych
NutritionRecord
.
Zmiany w interfejsie API
- Popraw
List<DataOrigin>
, aby byłSet<DataOrigin>
w różnych obiektach odpowiedzi żądania. (I42342) - Popraw jednostkę podstawowej liczby kalorii z Moc > Energia. (I0b429)
- Przeniesiono przykładowe klasy serii w rekordach serii (Ica9bb):
CyclingPedalingCadence
->CyclingPedalingCadenceRecord.Sample
HeartRate
->HeartRateRecord.Sample
StepsCadence
->StepsCadenceRecord.Sample
- Wycofaj klasę
HealthDataRequestPermission
na rzecz klasyPermissionController.createRequestPermissionActivityContract
. Spowoduje to lepszą wykrywalność i ujednolicenie parametrów. (I81e7f) - Do objętości dodano uncje płynu w Stanach Zjednoczonych. (I5f03d)
- Dodano typ jednostki prędkości (I1d574).
- Typ dodanej jednostki procentowej (I08f23)
- Dodano typ jednostki ciśnienia (Ifb01f)
- Dodano typ jednostki masy (Ifd81a)
- Dodano typ jednostki woluminu (I59ad1)
- Dodano typ jednostki zasilania. Przykładowa klasa serii potęg została przeniesiona do klasy
PowerRecord
. (I5b1e5) - Dodano typ jednostki energii (I983ae)
- Typ jednostki temperatury został dodany (I4cdb5)
- Zmień nazwy odwołań do Aktywności na konkretnie Ćwiczenie, w tym (I3f936):
- Zmieniono nazwę
ActivityLap
->ExerciseLapRecord
- Zmieniono nazwę
ActivityEvent
->ExerciseEventRecord
- Zmieniono nazwę
Repetitions
->ExerciseRepetitionsRecord
- Zmieniono nazwę
ActivitySession
->ExerciseSessionRecord
- Zmieniono nazwę
- Przeniesiono metadane pakietu zagnieżdżone w rekordach. (IE0835)
- Użyta jednostka długości we wszystkich pozostałych rekordach (Ib10dd):
ActivityLapRecord
ElevationGainedRecord
HeightRecord
HipCircumferenceRecord
WaistCircumferenceRecord
- Dodano typ jednostki długości (Idae39)
- Zaktualizuj terminologię opisującą
CervicalMucus
(I25a2b):CervicalMucus.Amount
->CervicalMucusRecord.Texture
CervicalMucus.Appearance
->CervicalMucusRecord.Sensation
- Dodano sufiks „Record” do wszystkich nazw klas rekordów (I1ffc2).
Poprawki błędów
- Naprawianie problemów z Progard w przypadku biblioteki lib utworzonej z formatem wersji i z atrybutem
minifyEnabled
true. (I78933) - Ukrywa dokumentację nieprzeznaczoną do użytku publicznego. (I7a08f)
- Rozwiązuje problem u klientów, którzy mogą mieć własne zależności protokołu (https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430).
Wersja 1.0.0-alfa02
1 czerwca 2022 r.
Aplikacja androidx.health:health-connect-client:1.0.0-alpha02
została zwolniona. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Wycofane operatory
hasMetric
igetMetric
w językuAggregationResult
, dodano operatory „zawiera” i „get” (I7cc7c). - Dodaje
OvulationTest.Result.HIGH
iOvulationTest.Result.INCONCLUSIVE
. (I9f9c4)
Poprawki błędów
- Zmniejsz wymagania dotyczące SDK do 26. (I6d201).
Wersja 1.0.0-alfa01
11 maja 2022 roku
Aplikacja androidx.health:health-connect-client:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs API do odczytywania danych o aktywności fizycznej i zdrowia udostępnianych przez inne aplikacje.
- Interfejs API do zapisywania danych o zdrowiu i aktywności fizycznej, które można udostępniać innym aplikacjom.
- Interfejs API do pobierania zagregowanych wskaźników na potrzeby dostępnych rekordów.
- Interfejs API do pobierania przyrostowych zmian (wstawianie, aktualizowanie lub usuwanie) rekordów innych aplikacji.
- Interfejs API wyświetlający prośbę o przyznanie uprawnień dotyczących zdrowia.
- Interfejs API do sprawdzania uprawnień lub unieważniania przyznanych uprawnień.
Wersja 1.1 klienta Health Services
Wersja 1.1.0-alfa02
13 grudnia 2023 r.
Aplikacja androidx.health:health-services-client:1.1.0-alpha02
została zwolniona. Wersja 1.1.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Używaj 1 źródła wiarygodnych danych dla obsługiwanych
ExerciseEvent
. (I03308)
Poprawki błędów
- Drobne poprawki błędów i ulepszenia dokumentacji.
Wersja 1.1.0-alfa01
9 sierpnia 2023 r.
Aplikacja androidx.health:health-services-client:1.1.0-alpha01
została zwolniona. Wersja 1.1.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Obok pierwszego konkretnego zdarzenia dodano
ExerciseEvent
interfejsów API:GolfShotEvent
. Podstawowe funkcjeExerciseEvent
umożliwiają programistom wysyłanie zapytań do zespołu pomocy i wysyłanie próśb o powiadomienie, gdy zegarek wykryje, że coś się stało. Na przykładGolfShotEvent
umożliwia deweloperom wysłanie powiadomienia o wykonaniu przez użytkownika uderzenia golfowego, a nie tylko o rozpoznaniu typu zamachu.
Zmiany w interfejsie API
- Włącz klienty pakietu WHS SDK, aby używać funkcji
GolfShotEvent
. (I76b03)
Poprawki błędów
- Zamiast agresywnie rzucać wyjątki, odfiltrowując nieznane możliwości związane ze zdarzeniami ćwiczeniowymi, odfiltruj je z listy. (I06afc)
Wersja 1.0 klienta Health Services
Wersja 1.1.0-alfa03
14 maja 2024 r.
Aplikacja androidx.health:health-services-client:1.1.0-alpha03
została zwolniona. Wersja 1.1.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Wprowadziliśmy interfejsy API
DebouncedGoal
, które umożliwiają śledzenie celu w przypadku przykładowych typów danych lub przykładowych danych statystycznych podczas ćwiczeń z funkcjami odbijania adresów URL(initialDelay
idurationAtThreshold
). (I09be9) - Dodano następującą próbkę zaawansowanych danych biegowych i statystyczną próbkę
DataTypes
. (I0b8b5):Ground Contact Time
Vertical Oscillation
Vertical Ratio
Stride Length
Zmiany w interfejsie API
- Dodano:
DataType
(ELEVATION_GAIN_DAILY
). (I059d1) - Dodano
SWIM_LAP_COUNT_TOTAL
DataType
jako zagregowane daneDataType
dlaSWIM_LAP_COUNT
. (I0beeb)
Poprawki błędów
- Rozwiązaliśmy różne problemy w celu zwiększenia niezawodności IPC.
Wersja 1.0.0-rc02
3 kwietnia 2024 r.
Aplikacja androidx.health:health-services-client:1.0.0-rc02
została zwolniona. Wersja 1.0.0-rc02 zawiera te zatwierdzenia. Jest to wersja z poprawką błędów i nie zawiera zmian w interfejsie API.
Poprawki błędów
- Rozwiązano różne problemy w celu zwiększenia niezawodności IPC
- Rozwiązaliśmy problem, który powodował, że wywołanie funkcji
startExercise
w tym samym czasie coprepareExercise
mogło prowadzić do błęduConcurrentModificationException
(4e37773). - Ulepszona dokumentacja
Wersja 1.0.0-rc01
26 lipca 2023 r.
Aplikacja androidx.health:health-services-client:1.0.0-rc01
została zwolniona. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Nowe funkcje
- Po ustabilizowaniu się w wersji beta została ona zmieniona na wersję 1.0.0-rc01.
Zmiany w interfejsie API
- Scalono publiczne i eksperymentalne pliki interfejsu API dla ścieżek h-thru m. (Ic4630, b/278769092)
- Nie dotyczy. Zmiany w plikach interfejsu API to tylko zmiany kolejności metod. (I5fa95)
Wersja 1.0.0-beta03
5 kwietnia 2023 r.
Aplikacja androidx.health:health-services-client:1.0.0-beta03
została zwolniona. Wersja 1.0.0-beta03 zawiera te zatwierdzenia.
Nowe funkcje
Urządzenie BatchingMode
można teraz skonfigurować tak, aby podczas aktywnego ćwiczenia wysyłało dane zbiorcze w skonfigurowanym odstępie czasu zamiast wartości domyślnej, zarówno na początku ćwiczenia, jak i w ExerciseConfig
, albo w trakcie zastępowania. Ta funkcja zostanie włączona w nadchodzącej wersji Usług medycznych w Sklepie Google Play. Można ją sprawdzić za pomocą funkcji związanych z ćwiczeniami. Uwaga: tryby grupowania działają, gdy urządzenie jest w stanie zasilania nieinteraktywnej, i powoduje większe zużycie energii.
Zmiany w interfejsie API
- Zwrócenie
HealthServicesException
, gdy funkcja zawieszeniaoverrideBatchingModesForActiveExercise
nie powiedzie się (Ifd387) - Wprowadzono funkcje zawieszania dla asynchronicznego interfejsu API
overrideBatchingModesForActiveExercise
, co zwiększyło ich zgodność z kotlinami (I7dd15). BatchingMode
zastąpienia są opcjonalne w usłudzeExerciseConfig
(Id22e9)
Poprawki błędów
- Drobne poprawki w
DataType
iExerciseUpdate
(5E185f)
Wersja 1.0.0-beta02
11 stycznia 2023 r.
Aplikacja androidx.health:health-services-client:1.0.0-beta02
została zwolniona. Wersja 1.0.0-beta02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano funkcje rozszerzenia
suspend
dla istniejących asynchronicznych interfejsów APIListenableFuture
w językachExerciseClient
,PassiveMonitoringClient
iMeasureClient
, aby zapewnić lepszą obsługę Kotlin. (Iadea4) - Dodano interfejs
ExerciseTypeConfig
API, który włącza aktualizacje podczas trwającego ćwiczenia. DodanoGolfExerciseTypeConfig
, aby umożliwić aktualizowanieExerciseTypeConfig
podczas ćwiczeń golfowych. (I4c539)
Zmiany w interfejsie API
- Zgłoś
HealthServicesException
w przypadku funkcji zawieszania (I5e509) - Dodaj kolejny konstruktor, by zapewnić zgodność wsteczną (Iddeda)
- Zgłoś
RuntimeException
w przypadku funkcji zawieszania (I53bca) - Usuń domyślną implementację zgłaszania wyjątku (Id947f)
- Dodawanie adnotacji
@JvmDefaultWithCompatibility
(I8f206)
Poprawki błędów
- Aby zwiększyć przejrzystość, dodaj do kdoc (Ide285)
- Zezwalaj na pasywne monitorowanie celów tylko wtedy, gdy śledzone są też te same typy danych (Ibed8d)
Wersja 1.0.0-beta01
24 października 2022 r.
Aplikacja androidx.health:health-services-client:1.0.0-beta01
została zwolniona. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Nowe funkcje
Dodano możliwość nasłuchiwania zdarzeń dotyczących zdrowia do
PassiveMonitoringClient
, przy czym pierwsze zdarzenie to: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
- Aktualizacja sposobu modelowania danych: model danych oraz sposób przedstawiania wartości
DataType
iDataPoint
oraz ich wartości bazowych zostały zmodernizowane. Najważniejsze jest to, że interfejsy API są teraz znacznie bardziej widoczne i bezpieczniejsze pod względem wpisywania. - Lokalizacje
DataPoint
nie są już reprezentowane jakoDoubleArray
, ale jako obiektLocationData
o silnym typie. - Przeniesiono do nowego zestawu interfejsów API pasywnego detektora:
- Transmisja została zastąpiona przez
PassiveListenerService
. - Dotychczasowe detektory zostały zastąpione jednym detektorem:
PassiveListenerCallback
.
- Transmisja została zastąpiona przez
- Dodano tag
<queries>
do pliku manifestu Health Services, aby aplikacje nie musiały już tego określać w swoim pliku manifestu (pod warunkiem, że łączenie plików manifestu jest włączone w ich systemie kompilacji). - Większa liczba sekund
ExerciseState
oznacza zakończenie / zakończenie ćwiczenia oraz dodanie nowych stanów ćwiczeniaENDING
iENDED
. Te stany są teraz połączone z polemExerciseEndReason
, aby odzwierciedlać pełną gamę poprzednich stanów. - Zmiana nazwy z
PassiveListenerConfig
setPassiveGoals
nasetDailyGoals
, aby lepiej odzwierciedlić, że obsługujemy tylko codzienne cele pasywne. - Funkcje
PassiveGoal
teraz zawszeREPEATED
, usunięte pasywneTriggerFrequency
. - Dodano adnotacje do wszystkich parametrów
Long
iDouble
:@FloatRange
. - Dodano właściwość
swimmingPoolLengthMeters
do obiektuExerciseConfig
, która może być opcjonalnie określona, aby poprawić obliczanie odległości podczas pływania w basenie. - Wycofano:
ExerciseUpdate.activeDuration
. Użyj w zamian zasadyExerciseUpdate.activeDurationCheckpoint
. - W
ExerciseClient
zmieniono nazwę interfejsu APIflushExerciseAsync()
naflushAsync()
. - Nazwa użytkownika
Measure.registerCallback
została zmieniona naMeasure.registerMeasureCallback
. - Ogólne zmiany w nazwach:
- Właściwości odległości mają teraz sufiks
meters
. - Nazwy metod wywołania zwrotnego są teraz w przeszłości.
- Większość skrótów została usunięta (obecnie
HrAccuracy
toHeartRateAccuracy
). - Właściwości zgodne z wzorcem
enableFoo
mają teraz nazwęisFooEnabled
.
- Właściwości odległości mają teraz sufiks
- Przeniesiono z Enums.
- Czasy w formacie
Double
są teraz reprezentowane przezDuration
. - Funkcje zwracające typ
ListenableFuture<Void?>
zwracają teraz wartośćListenableFuture<Void>
. - W przypadku funkcji, które przyjmują wywołanie zwrotne, wywołanie to zawsze jest widoczne jako ostatni parametr.
- Klasy z konstruktorami zawsze mają również publiczne konstruktory.
- Funkcje rejestracji nie zwracają już wartości
ListenableFuture
, tylko przekazują stan rejestracji do podanego wywołania zwrotnego. - Dokumenty KDokumenty zostały ulepszone.
- Zajęcia publiczne nie są już przedłużone o
ProtoParcelable
.
Poprawki błędów
- Ogólne ulepszenia niezawodności IPC (I3b1e2)
Wersja 1.0.0-alfa03
3 listopada 2021 r.
Aplikacja androidx.health:health-services-client:1.0.0-alpha03
została zwolniona. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- W przypadku zerwania połączenia IPC z pakietem APK usług medycznych pakiet SDK automatycznie ponownie zarejestruje żądania rejestracji pomiarów, detektorów ćwiczeń i pasywnego monitorowania wywołań zwrotnych.
Zmiany w interfejsie API
- Wartość minSdkVersion biblioteki pakietu SDK spadła do poziomu API 30, ponieważ klient usług medycznych jest obecnie obsługiwany tylko na Wear 3.
Wersja 1.0.0-alfa02
29 września 2021 r.
Aplikacja androidx.health:health-services-client:1.0.0-alpha02
została zwolniona. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Aplikacja
ExerciseClient
umożliwia teraz przygotowanie ćwiczenia. Dzięki temu klienci mogą rozgrzać czujniki i poczekać na pozycję GPS, zanim zaczną ćwiczyć. - Wprowadzono klasy CumulativeDataPoints i StatificalDataPoints AggregateDataPoint w celu lepszego modelowania wskaźników zbiorczych śledzonych podczas aktywnego ćwiczenia. Wskaźniki CumulativeDataPoints przechowują skumulowane wartości zagregowanych wartości typów danych dotyczących interwałów (takich jak całkowity dystans podczas ćwiczenia), a model StatificalDataPoints agreguje próbkowane punkty danych (np. min., maksymalną i średnią wartość tętna na minutę). Zastępuje on poprzednie typy danych (
AGGREGATE_*
) i jest dostępny w narzędziu Ćwiczenie za pomocą narzędziagetLatestAggregateMetrics()
. Typy danych (AGGREGATE_*
) nie są już obsługiwane. - Nazwę zdarzeń
PassiveMonitoring
zmieniono naPassiveGoals
. Umożliwia ona ustawianie celów i otrzymywanie powiadomień o ich osiągnięciu. Dotyczy to takich typów danych jak Dane dzienne (np. DAILY_STEPS). - Ulepszone modelowanie tętna i lokalizacji oraz dokładność i dostępność dzięki wprowadzeniu nowych klas HrAccuracy, LocationAccuracy i LocationAvailability.
- Poprawione nazwy pól
ExerciseConfig
i nowychPassiveMonitoringConfig
oraz wprowadzenieExerciseConfig.shouldEnableGps
umożliwiającego wysyłanie żądań danych opartych na GPS.
Poprawki błędów
- Przenosi do transportu IPC opartego na protokołach, aby zapewnić lepszą zgodność wsteczną
Wersja 1.0.0-alfa01
18 maja 2021 r.
Aplikacja androidx.health:health-services-client:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Funkcje pierwszej wersji
Biblioteka usług medycznych udostępnia deweloperom jednolity zestaw interfejsów API, które można zintegrować z implementacjami czujników dla konkretnych urządzeń. Będzie ona działać od razu z emulatorami Wear OS 3 i nadchodzącymi urządzeniami. W przyszłości obsługa kolejnych platform będzie obsługiwana. Ta wstępna wersja obejmuje 3 platformy API najwyższego poziomu: ExerciseClient
, PassiveMonitoringClient
i MeasureClient
.
Skrypt Ćwiczenia
Urządzenie ExerciseClient
jest przeznaczone do aplikacji śledzących aktywne treningi, w tym 82 różne rodzaje aktywności (ExerciseType
), od chodzenia i biegu po taniec i piłkę wodną. Podczas śledzenia tych ćwiczeń masz do wyboru 50 różnych typów DataType
w zależności od rodzaju ćwiczenia i dostępnego w urządzeniu sprzętu. Aby rozpocząć, podaj odpowiednie informacje w ExerciseConfig
, zadzwoń pod numer exerciseClient.startExercise
i sprawdź postęp w detektorze aktualizacji.
PassiveMonitoringClient
PassiveMonitoringClient
to doskonały wybór, jeśli aplikacja śledzi aktywność użytkownika przez cały dzień. Gdy zarejestrujesz PendingIntent
przy użyciu zestawu DataType
, możesz się wybudzić, aby wprowadzić zmiany zbiorcze. Możesz też określić Event
, np. osiągnąć określoną liczbę kroków.
MeasureClient
Czasami użytkownik musi mierzyć tętno w danej chwili, a nie podczas ćwiczenia czy przez cały dzień. W takich chwilach doskonałym rozwiązaniem jest MeasureClient
.Wystarczy zarejestrować oddzwonienie, korzystając z obsługiwanych komponentów typu DataType
, aby otrzymać strumień danych, i wyrejestrować połączenie, które nie jest już potrzebne.