Zustand
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 11. Februar 2026 | 1.0.0 | - | 1.1.0-beta01 | - |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Health hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:
Groovy
dependencies { implementation "androidx.health:health-services-client:1.1.0-beta01" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-beta01") }
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf die Schaltfläche mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Health Connect-Client Version 1.0
Version 1.0.0-alpha04
24. August 2022
Ab Version 1.0.0-alpha04 wurde androidx.health:health-connect-client zu androidx.health.connect:connect-client migriert. Für zukünftige Releases verwenden Sie bitte androidx.health.connect:connect-client und die zugehörigen Versionshinweise auf unserer Health Connect-Seite.
Für die Migration müssen Sie lediglich den Import Ihrer Abhängigkeit von
androidx.health:health-connect-client:1.0.0-alpha03 in
androidx.health.connect:connect-client:1.0.0-alpha04 ändern.
Version 1.0.0-alpha03
27. Juli 2022
androidx.health:health-connect-client:1.0.0-alpha03 ist veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
- Zusammenfassung der neuen API-Änderungen: Den APIs für Lese-, Schreib- und Aggregationsvorgänge wurde eine Reihe von Einheiten hinzugefügt. Apps können jetzt Datensätze mit der gewünschten Einheit abrufen oder schreiben, z. B. Gramm oder Milligramm für
NutritionRecord-Nährstoffe.
API-Änderungen
List<DataOrigin>wurde in verschiedenen Anfrage-Antwort-Objekten inSet<DataOrigin>geändert. (I42342)- Die Einheit für den Grundumsatz wurde von „Leistung“ –> „Energie“ korrigiert. (I0b429)
- Beispielklassen für Serien in Serienaufzeichnungen verschoben (Ica9bb):
CyclingPedalingCadence->CyclingPedalingCadenceRecord.SampleHeartRate->HeartRateRecord.SampleStepsCadence->StepsCadenceRecord.Sample
- Die Klasse
HealthDataRequestPermissionwird zugunsten vonPermissionController.createRequestPermissionActivityContracteingestellt. Dadurch wird die Auffindbarkeit verbessert und die Parametrisierung vereinheitlicht. (I81e7f) - Der Einheit „Volumen“ wurden US-Flüssigunzen hinzugefügt. (I5f03d)
- Geschwindigkeitseinheitstyp hinzugefügt (I1d574)
- Einheitstyp „Prozent“ hinzugefügt (I08f23)
- Einheitstyp „Druck“ (Ifb01f) hinzugefügt
- Einheitstyp „Masse“ hinzugefügt (Ifd81a)
- Volumeneinheitstyp hinzugefügt (I59ad1)
- Der Typ der Stromversorgungseinheit wurde hinzugefügt. Die Beispielklasse für Power-Serien wurde in die Klasse
PowerRecordverschoben. (I5b1e5) - „Energy unit type“ (I983ae) wurde hinzugefügt.
- Einheitstyp „Temperatur“ hinzugefügt (I4cdb5)
- Benenne Verweise auf „Aktivität“ in „Training“ um, einschließlich (I3f936):
ActivityLapwurde inExerciseLapRecordumbenannt.ActivityEventwurde inExerciseEventRecordumbenannt.Repetitionswurde inExerciseRepetitionsRecordumbenannt.ActivitySessionwurde inExerciseSessionRecordumbenannt.
- Verschachtelte Paketmetadaten unter Datensätzen verschoben. (Ie0835)
- Verwendete Längeneinheit in allen verbleibenden Datensätzen (Ib10dd):
ActivityLapRecordElevationGainedRecordHeightRecordHipCircumferenceRecordWaistCircumferenceRecord
- Längeneinheitstyp hinzugefügt (Idae39)
- Aktualisierung der Terminologie in der Beschreibung von
CervicalMucus(I25a2b):CervicalMucus.Amount->CervicalMucusRecord.TextureCervicalMucus.Appearance->CervicalMucusRecord.Sensation
- Das Suffix „Record“ wurde allen Namen von Datensatzklassen (I1ffc2) hinzugefügt.
Fehlerkorrekturen
- Proguard-Probleme beheben, wenn die Bibliothek mit der Release-Variante und
minifyEnabledauf „true“ erstellt wurde. (I78933) - Blendet Dokumentation aus, die nicht für die öffentliche Nutzung vorgesehen ist. (I7a08f)
- Behebt das Problem in Clients, die möglicherweise eigene Protobuf-Abhängigkeiten haben.(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)
Version 1.0.0-alpha02
1. Juni 2022
androidx.health:health-connect-client:1.0.0-alpha02 ist veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
hasMetricundgetMetricinAggregationResultverworfen, Operatoren „contains“ und „get“ hinzugefügt (I7cc7c)- Fügt
OvulationTest.Result.HIGHundOvulationTest.Result.INCONCLUSIVEhinzu. (I9f9c4)
Fehlerkorrekturen
- Reduzieren Sie die SDK-Anforderungen auf 26. (I6d201)
Version 1.0.0-alpha01
11. Mai 2022
androidx.health:health-connect-client:1.0.0-alpha01 ist veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
- API zum Lesen von Fitness- und Gesundheitsdaten, die von anderen Apps geteilt werden.
- API zum Schreiben von Fitness- und Gesundheitsdatensätzen, die mit anderen Apps geteilt werden können.
- API zum Abrufen zusammengefasster Messwerte für zugängliche Datensätze.
- API zum Abrufen inkrementeller Änderungen (Einfügen, Aktualisieren oder Löschen) von Datensätzen durch andere Apps.
- API, um Nutzer nach Gesundheitsberechtigungen zu fragen.
- API zum Prüfen von Berechtigungen oder zum Widerrufen erteilter Gesundheitsberechtigungen.
Health Services-Clientversion 1.1
Version 1.1.0-beta01
11. Februar 2026
androidx.health:health-services-client:1.1.0-beta01, androidx.health:health-services-client-external-protobuf:1.1.0-beta01 und androidx.health:health-services-client-proto:1.1.0-beta01 sind veröffentlicht. Version 1.1.0-beta01 enthält keine Änderungen gegenüber der vorherigen Alpha-Version.
Version 1.1.0-alpha05
11. Dezember 2024
androidx.health:health-services-client:1.1.0-alpha05, androidx.health:health-services-client-external-protobuf:1.1.0-alpha05 und androidx.health:health-services-client-proto:1.1.0-alpha05 sind veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
Neue Funktionen
- Enthält jetzt ProGuard-Regeln, um zu verhindern, dass erforderliche Klassen entfernt werden. (65d0c3f)
Fehlerkorrekturen
- In dieser Bibliothek werden jetzt JSpecify-Annotationen für Nullsicherheit verwendet, die typbezogen sind. Kotlin-Entwickler sollten das folgende Compiler-Argument verwenden, um die korrekte Verwendung zu erzwingen:
-Xjspecify-annotations=strict(dies ist die Standardeinstellung ab Version 2.1.0 des Kotlin-Compilers). (Iaf73a, b/326456246)
Version 1.1.0-alpha04
16. Oktober 2024
androidx.health:health-services-client:1.1.0-alpha04, androidx.health:health-services-client-external-protobuf:1.1.0-alpha04 und androidx.health:health-services-client-proto:1.1.0-alpha04 sind veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
Behebung von Sicherheitsproblemen
- Seit dieser Änderung wird androidx mit protobuf 4.28.2 kompiliert, um CVE-2024-7254 zu beheben. Aktualisieren Sie die Abhängigkeit von
androidx.health:health-services-clientauf die neueste Version 1.1.0-alpha04, um das Sicherheitsrisiko zu beheben.
Version 1.1.0-alpha02
13. Dezember 2023
androidx.health:health-services-client:1.1.0-alpha02 ist veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
API-Änderungen
- Verwenden Sie eine zentrale Informationsquelle für unterstützte
ExerciseEvent. (I03308)
Fehlerkorrekturen
- Kleinere Fehlerkorrekturen und Verbesserungen der Dokumentation.
Version 1.1.0-alpha01
9. August 2023
androidx.health:health-services-client:1.1.0-alpha01 ist veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
ExerciseEventAPIs wurden zusammen mit dem ersten konkreten EreignisGolfShotEventhinzugefügt. Mit denExerciseEvent-Primitiven können Entwickler abfragen, ob eine Funktion unterstützt wird, und sich benachrichtigen lassen, wenn die Smartwatch etwas erkennt.GolfShotEventermöglicht es Entwicklern beispielsweise, benachrichtigt zu werden, wenn der Nutzer einen Golfschlag ausführt, und gleichzeitig den erkannten Schwungtyp zu erhalten.
API-Änderungen
- WHS SDK-Clients die Verwendung von
GolfShotEvent-Funktionen ermöglichen. (I76b03)
Fehlerkorrekturen
- Anstatt bei unbekannten Funktionen für Trainingsereignisse aggressiv Ausnahmen auszulösen, sollten Sie sie aus der Liste herausfiltern. (I06afc)
Health Services-Clientversion 1.0
Version 1.0.0
7. Mai 2025
androidx.health:health-services-client:1.0.0 ist veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von Version 1.0.0
- Dies ist die Promotion von 1.0.0-rc02 zum stabilen Release von Health Services Client. Es gibt keine Änderungen gegenüber Version 1.0.0-rc02.
Version 1.1.0-alpha03
14. Mai 2024
androidx.health:health-services-client:1.1.0-alpha03 ist veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Es wurden
DebouncedGoal-APIs eingeführt, mit denen ein Ziel für den Beispieldatentyp oder den Statistiken-Beispieldatentyp während des Trainings mit Entprellungsfunktionen(initialDelayunddurationAtThreshold) verfolgt werden kann. (I09be9) - Das folgende Beispiel für erweiterte Laufmesswerte und statistische
DataTypeswurde hinzugefügt. (I0b8b5):Ground Contact TimeVertical OscillationVertical RatioStride Length
API-Änderungen
ELEVATION_GAIN_DAILYDataTypewurde hinzugefügt. (I059d1)SWIM_LAP_COUNT_TOTALDataTypewurde als aggregierteDataTypefürSWIM_LAP_COUNThinzugefügt. (I0beeb)
Fehlerkorrekturen
- Verschiedene Probleme behoben, um die IPC-Zuverlässigkeit zu verbessern.
Version 1.0.0-rc02
3. April 2024
androidx.health:health-services-client:1.0.0-rc02 ist veröffentlicht. Version 1.0.0-rc02 enthält diese Commits. Diese Version enthält nur Fehlerkorrekturen und keine API-Änderungen.
Fehlerkorrekturen
- Verschiedene Probleme behoben, um die IPC-Zuverlässigkeit zu verbessern
- Ein Problem wurde behoben, bei dem das gleichzeitige Aufrufen von
startExerciseundprepareExercisezu einemConcurrentModificationException(4e37773) führen konnte. - Verbesserte Dokumentation
Version 1.0.0-rc01
26. Juli 2023
androidx.health:health-services-client:1.0.0-rc01 ist veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Neue Funktionen
- Health Services wurde nach der Stabilisierung in der Betaphase auf Version 1.0.0-rc01 aktualisiert.
API-Änderungen
- Zusammengeführte öffentliche und experimentelle API-Dateien für h- bis m-Pfade. (Ic4630, b/278769092)
- Nicht zutreffend. Bei API-Dateiänderungen werden nur Methoden neu angeordnet. (I5fa95)
Version 1.0.0-beta03
5. April 2023
androidx.health:health-services-client:1.0.0-beta03 ist veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
BatchingMode kann jetzt so konfiguriert werden, dass während eines aktiven Trainings die Trainingsdaten im konfigurierten Intervall anstelle des Standardintervalls bereitgestellt werden. Dies kann entweder zu Beginn des Trainings über ExerciseConfig oder während des Trainings über eine Überschreibmethode erfolgen. Die Unterstützung dafür wird durch eine bevorstehende Health Services-Version im Google Play Store aktiviert und kann über die Trainingsfunktionen geprüft werden. Hinweis: Batching-Modi werden wirksam, wenn sich das Gerät in einem nicht interaktiven Energiezustand befindet, und führen zu einem erhöhten Stromverbrauch.
API-Änderungen
HealthServicesExceptionwird ausgelöst, wenn die Suspend-FunktionoverrideBatchingModesForActiveExercisefehlschlägt (Ifd387)- Einführung von Suspend-Funktionen für die asynchrone
overrideBatchingModesForActiveExerciseAPI, um sie Kotlin-freundlicher zu machen (I7dd15) BatchingModeoverrides optional inExerciseConfig(Id22e9)
Fehlerkorrekturen
DataTypeundExerciseUpdate– kleine Korrekturen (5e185f)
Version 1.0.0-beta02
11. Januar 2023
androidx.health:health-services-client:1.0.0-beta02 ist veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
- Es wurden
suspend-Erweiterungsfunktionen für die vorhandenen asynchronenListenableFuture-APIs inExerciseClient,PassiveMonitoringClientundMeasureClienthinzugefügt, um die Kotlin-Unterstützung zu verbessern. (Iadea4) - Die
ExerciseTypeConfigAPI wurde hinzugefügt, die Updates während eines laufenden Trainings ermöglicht.GolfExerciseTypeConfigwurde hinzugefügt, um die Aktualisierung vonExerciseTypeConfigwährend Golftrainings zu unterstützen. (I4c539)
API-Änderungen
- Auslösen von
HealthServicesExceptionfür suspend-Funktionen (I5e509) - Einen weiteren Konstruktor für die Abwärtskompatibilität hinzufügen (Iddeda)
RuntimeExceptionfür suspend-Funktionen auslösen (I53bca)- Standardimplementierung zum Auslösen von „Exception“ entfernen (Id947f)
- Annotation
@JvmDefaultWithCompatibilitywurde hinzugefügt. (I8f206)
Fehlerkorrekturen
- Kdoc zur besseren Verständlichkeit ergänzen (Ide285)
- Passives Monitoring für Ziele nur zulassen, wenn dieselben Datentypen auch erfasst werden (Ibed8d)
Version 1.0.0-beta01
24. Oktober 2022
androidx.health:health-services-client:1.0.0-beta01 ist veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Neue Funktionen
Es wurde die Möglichkeit hinzugefügt, über
PassiveMonitoringClientauf Gesundheitsereignisse zu warten. Das erste Ereignis istHealthEvent.FALL_DETECTED.Neue Trainingstypen:
ALPINE_SKIINGBACKPACKINGCROSS_COUNTRY_SKIINGHORSE_RIDINGINLINE_SKATINGMOUNTAIN_BIKINGORIENTEERINGROLLER_SKATINGYACHTING
Neue Datentypen:
ELEVATION_LOSSGOLF_SHOT_COUNT
API-Änderungen
- Aktualisierung der Datenmodellierung: Das Datenmodell und die Darstellung von
DataTypes,DataPoints und ihren zugrunde liegenden Werten wurden überarbeitet. Die Auswirkungen auf höchster Ebene sind, dass APIs jetzt viel expliziter und typsicherer sind. - Standorte
DataPointwerden nicht mehr alsDoubleArray, sondern als stark typisiertesLocationData-Objekt dargestellt. - Es wurde eine neue Reihe von APIs für passive Listener eingeführt:
- Die Übertragung wurde durch die
PassiveListenerServiceersetzt. - Die vorhandenen Listener wurden durch einen einzigen Listener ersetzt:
PassiveListenerCallback.
- Die Übertragung wurde durch die
- Das Tag
<queries>wurde dem Health Services-Manifest hinzugefügt, sodass Anwendungen dies nicht mehr in ihrem eigenen Manifest angeben müssen (vorausgesetzt, die Manifestzusammenführung ist in ihrem Build-System aktiviert). - Wir haben viele
ExerciseStates entfernt, die das Ende eines Trainings darstellen, und die neuen TrainingsstatusENDINGundENDEDhinzugefügt. Diese werden jetzt mitExerciseEndReasonkombiniert, um das gesamte Spektrum der vorherigen Status darzustellen. PassiveListenerConfigsetPassiveGoalswurde insetDailyGoalsumbenannt, um besser widerzuspiegeln, dass wir nur tägliche passive Ziele unterstützen.PassiveGoalist jetzt immerREPEATED, passivesTriggerFrequencywurde entfernt.- Alle
Long- undDouble-Parameter wurden mit@FloatRangeannotiert. - Der
swimmingPoolLengthMeters-Eigenschaft wurdeExerciseConfighinzugefügt. Sie kann optional angegeben werden, um die Distanzberechnung für Schwimmbad-Schwimmtrainings zu verbessern. ExerciseUpdate.activeDurationist veraltet. Verwenden Sie stattdessenExerciseUpdate.activeDurationCheckpoint.- Die API
flushExerciseAsync()wurde inExerciseClientinflushAsync()umbenannt. Measure.registerCallbackwurde inMeasure.registerMeasureCallbackumbenannt.- Allgemeine Änderungen bei der Namensgebung:
- Distanz-Properties haben jetzt das Suffix
meters. - Callback-Methodennamen stehen jetzt im Perfekt.
- Die meisten Abkürzungen wurden entfernt (
HrAccuracyist jetztHeartRateAccuracy). - Eigenschaften, die dem Muster
enableFoofolgen, werden jetzt alsisFooEnabledbezeichnet.
- Distanz-Properties haben jetzt das Suffix
- Von Enums migriert.
- Zeiten, die durch
Doubledargestellt werden, werden jetzt durchDurationdargestellt. - Funktionen, die bisher ein
ListenableFuture<Void?>zurückgegeben haben, geben jetzt einListenableFuture<Void>zurück. - Bei Funktionen, die einen Callback akzeptieren, ist der Callback jetzt immer der letzte Parameter.
- Klassen mit Buildern haben jetzt immer auch öffentliche Konstruktoren.
- Registrierungsfunktionen geben nicht mehr
ListenableFuturezurück, sondern übergeben den Registrierungsstatus an den bereitgestellten Callback. - Die KDocs wurden verbessert.
- Öffentliche Klassen werden nicht mehr erweitert.
ProtoParcelable
Fehlerkorrekturen
- Allgemeine Verbesserungen der IPC-Zuverlässigkeit (I3b1e2)
Version 1.0.0-alpha03
3. November 2021
androidx.health:health-services-client:1.0.0-alpha03 ist veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
- Das SDK registriert Anfragen zur Registrierung von Mess-, Trainings-Listenern und Passivüberwachungs-Callbacks automatisch neu, falls die IPC-Verbindung zur Health Services APK unterbrochen wird.
API-Änderungen
- Das minSdkVersion der SDK-Bibliothek wurde auf API-Level 30 angehoben, da der Health Services-Client derzeit nur auf Wear3 unterstützt wird.
Version 1.0.0-alpha02
29. September 2021
androidx.health:health-services-client:1.0.0-alpha02 ist veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
ExerciseClientunterstützt jetzt die Vorbereitung von Übungen. So können Kunden die Sensoren aufwärmen und beispielsweise auf ein GPS-Signal warten, bevor sie mit dem Training beginnen.- Die Klassen „CumulativeDataPoints“ und „StatisticalDataPoints“ werden eingeführt, um aggregierte Messwerte, die während eines aktiven Trainings erfasst werden, besser zu modellieren. „CumulativeDataPoints“ enthalten kumulative Werte von aggregierten Intervalldatentypen (z. B. die Gesamtdistanz während des Trainings), während „StatisticalDataPoints“ Aggregate von Stichprobendatenpunkten (z. B. die minimale, maximale und durchschnittliche Herzfrequenz in BPM) modellieren. Dadurch werden die vorherigen
AGGREGATE_*-Datentypen ersetzt. Auf sie kann im ExerciseUpdate übergetLatestAggregateMetrics()zugegriffen werden.AGGREGATE_*-Datentypen werden nicht mehr unterstützt. PassiveMonitoring-Ereignisse wurden inPassiveGoalsumbenannt. Damit können Ziele festgelegt und Benachrichtigungen empfangen werden, wenn diese Ziele für Datentypen wie „Tägliche Messwerte“ (z. B. DAILY_STEPS) erreicht werden.- Verbesserte Modellierung der Herzfrequenz- und Standortgenauigkeit und ‑verfügbarkeit durch die Einführung der neuen Klassen „HrAccuracy“, „LocationAccuracy“ und „LocationAvailability“.
- Verbesserte Benennung von
ExerciseConfigund neuePassiveMonitoringConfig-Felder sowie Einführung vonExerciseConfig.shouldEnableGpszum Anfordern von GPS-gestützten Daten
Fehlerkorrekturen
- Migration zu einem auf Protokollpuffer basierenden IPC-Transport für eine bessere Abwärtskompatibilität
Version 1.0.0-alpha01
18. Mai 2021
androidx.health:health-services-client:1.0.0-alpha01 ist veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Funktionen der Erstveröffentlichung
Die Health Services-Bibliothek bietet Entwicklern einheitliche APIs für die Integration in gerätespezifische Sensorimplementierungen. Es funktioniert sofort mit Wear OS 3-Emulatoren und zukünftigen Geräten. Weitere Plattformen werden in Zukunft unterstützt. Diese erste Version umfasst drei API-Oberflächen der obersten Ebene: ExerciseClient, PassiveMonitoringClient und MeasureClient.
ExerciseClient
Die ExerciseClient wurde für Apps entwickelt, die aktive Trainings aufzeichnen. Es gibt bis zu 82 verschiedene ExerciseTypes, von Gehen und Laufen bis hin zu Tanzen und Wasserball. Bei der Aufzeichnung dieser Trainings stehen je nach Trainingstyp und Hardware des Geräts 50 DataTypes zur Auswahl. Geben Sie dazu einfach die entsprechenden Informationen in Ihrem ExerciseConfig an, rufen Sie exerciseClient.startExercise auf und warten Sie auf den Fortschritt des Update-Listeners.
PassiveMonitoringClient
Die PassiveMonitoringClient ist eine gute Wahl, wenn Ihre Anwendung die Aktivitäten des Nutzers den ganzen Tag über verfolgt. Sie können ein PendingIntent mit einer Reihe von DataTypes registrieren und werden dann aktiviert, um die gebündelten Änderungen zu verarbeiten. Alternativ können Sie ein Event angeben, z. B. eine bestimmte Anzahl von Schritten.
MeasureClient
Manchmal muss der Nutzer z.B. seine Herzfrequenz im Moment messen, nicht während eines Trainings und nicht den ganzen Tag über. In solchen Fällen ist MeasureClient die perfekte Wahl.Sie registrieren einfach Ihren Callback bei unterstützten DataTypes, um einen Datenstream zu empfangen, und heben die Registrierung Ihres Callbacks auf, wenn er nicht mehr benötigt wird.