PrivacySandbox-UI
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpha-Release |
---|---|---|---|---|
26. Juni 2024 | - | - | - | 1.0.0-alpha09 |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von der privacysandbox-ui hinzufügen möchten, müssen Sie Ihrem Projekt das Maven-Repository von Google hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen:
Cool
dependencies { // Use to implement privacysandbox ui implementation "androidx.privacysandbox.ui:ui:1.0.0-alpha09" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha09" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09" }
Kotlin
dependencies { // Use to implement privacysandbox ui implementation("androidx.privacysandbox.ui:ui:1.0.0-alpha09") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha09") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder Verbesserungsvorschläge für diese Bibliothek haben. Bitte sieh dir die vorhandenen Probleme in dieser Bibliothek an, bevor du eine neue erstellst. Sie können einem vorhandenen Problem Ihre Stimme hinzufügen, indem Sie auf die Sternschaltfläche klicken.
Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung.
Version 1.0
Version 1.0.0-alpha09
26. Juni 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha09
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09
wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Abstrakte Klassen
AbstractSandboxedUiAdapter
undAbstractSandboxedUiAdapter.AbstractSession
wurden eingeführt, die von UI-Anbietern verwendet werden können, um die Implementierung der gesamten SchnittstelleSandboxedUiAdapter
oderSession
zu vermeiden. Es wird für UI-Anbieter empfohlen, diese abstrakten Klassen zu verwenden. - Es wurde eine
registerObserverFactory
-Logik hinzugefügt, die das Anhängen einerSessionObserverFactory
an eineSandboxedUiAdapter
ermöglicht. Wenn einSessionObserverFactory
an einen Adapter angehängt wird, wird einSessionObserver
für jede neue UI-Sitzung erstellt, die für diesen Adapter erstellt wird. Die erstellteSessionObserver
erhält einenonSessionOpened
-Callback, wenn die UI-Sitzung geöffnet wird. Wenn sich die UI-Darstellung der Ansicht vonSession
ändert, wirdSessionObserver.onUiContainerChanged
aufgerufen.onUiContainerChanged
wird gedrosselt und höchstens alle 200 ms aufgerufen. SandboxedSdkViewUiInfo
wurde hinzugefügt. Sie kann aus denBundle
erstellt werden, die inSessionObserver.onUiContainerChanged
gesendet wurden. Dieses Objekt stellt den UI-Status vonSandboxedSdkView
dar, auf dem die UI-Sitzung gehostet wird. Sie enthält Informationen zu Höhe und Breite, eineRect
, die die Geometrie der Ansicht darstellt, die auf dem Bildschirm sichtbar ist, und einen Deckkrafthinweis, der die Deckkraft der Ansicht angibt.
API-Änderungen
- Deckkrafthinweis zu
SandboxedSdkViewUiInfo
hinzufügen. (I093ac) - Füge
SessionObserver.onUiContainerChanged
undSandboxedSdkViewUiInfo
hinzu. (Ie98bc) SessionObserver
-Schnittstelle und Registrierungslogik hinzugefügt. (I047dc)- Füge
AbstractSandboxedUiAdapter
undAbstractSession
hinzu. (I3617a)
Bekannte Probleme
- Wenn sich der UI-Anbieter im selben Prozess wie die Clientanwendung befindet, wird
SessionObserver.onUiContainerChanged
beim Scrollen des Containers nicht gesendet.
Version 1.0.0-alpha08
14. Mai 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha08
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08
wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Unterstützung für die Verwendung von
SandboxedSdkView
inPoolingContainer
wie z. B.RecyclerView
wurde hinzugefügt. Wenn einSandboxedSdkView
-Element ein übergeordnetes Element hat, das einPoolingContainer
-Element ist, wird der Lebenszyklus seiner UI-Sitzungen an den Lebenszyklus derPoolingContainer
-Sitzung ausgerichtet, damit die Sitzung auch nach dem Trennen der Fenster erhalten bleibt.
API-Änderungen
- Eingestellte Privacy Sandbox Activity APIs. Du findest diese APIs jetzt stattdessen in der Aktivitätsbibliothek
androidx.privacysandbox.activity
. (I68beb)
Fehlerkorrekturen
- Ein Renderingfehler bei der Anzeige von Remote-Inhalten in Pooling-Containern wurde behoben. (I804df)
- Es wurde ein Fehler behoben, der Rendering-Probleme für
ViewGroups
im Abwärtskompatibilitätsmodus verursachte. (I8de92) - Wenn eines der übergeordneten
SandboxedSdkView
-Elemente einPoolingContainer
ist, schließen Sie die UI-Sitzung, wennPoolingContainer
angibt, dass Ressourcen freigegeben werden können, anstatt beim Trennen des Fensters. (I2046b)
Externer Beitrag
GestureDetectorCompat
wurde verworfen, daGestureDetector
imminSdk
verfügbar ist. (Icc4cd)
Version 1.0.0-alpha07
18. Oktober 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha07
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07
wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Abwärtskompatibilität für die Bibliothek hinzugefügt. Unter API 33 und niedriger wird die Ansicht des Anbieters innerhalb des App-Prozesses in einem anderen Classloader gerendert. (If0b7a)
- Es wurde eine Logik hinzugefügt, die es ermöglicht, dass die Größe von Host- und Anbietercontainern im selben Frame per Commit festgeschrieben wird, um sichtbare UI-Verzögerungen zu vermeiden. (Ic2cd9)
API-Änderungen
- MinSdk für die Bibliothek auf API 21 aktualisiert. (I474b8)
Version 1.0.0-alpha06
20. September 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha06
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06
wurden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Neue Funktionen
- Es wurde eine Logik zum Abschneiden von
SandboxedSdkView
zur übergeordneten Ansicht hinzugefügt, in der sie scrollen kann. Dadurch wird sichergestellt, dass der Inhalt vonSandboxedSdkView
keine anderen Ansichten oder UI-Komponenten außerhalb der Stamminhaltsansicht verdeckt. (I9ea94)
API-Änderungen
SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction
inorderProviderUiAboveClientUi
umbenennen (Iecb7e)
Fehlerkorrekturen
- Senden Sie den richtigen Wert für die Z-Reihenfolge an den Host. (Ib0ddf)
- Touchfokus nur beim vertikalen Scrollen/Wischen übertragen. (I0528c)
Version 1.0.0-alpha05
9. August 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha05
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05
wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
Neue Funktionen
- Es wurde eine Logik hinzugefügt, um den Touchfokus auf Scroll- und Wurfgesten von
SandboxedSdkView
auf das Hosten zu übertragen. Dadurch kann die scrollbare Benutzeroberfläche des Hostanbieters des Container-Hosts korrekt auf Scrolls und Flings reagieren.
API-Änderungen
- Parameter
windowInputToken
wurde zuSandboxedUiAdapter
hinzugefügt (Ief578)
Fehlerkorrekturen
- Sitzungsstatus nach der ersten Zeichnung auf „Aktiv“ setzen (I36f3f)
- Ein Layoutproblem mit
SandboxedSdkView
wurde behoben. (I09cb8) - Es wurde eine Logik zur Übertragung des Berührungsfokus auf den Organisator hinzugefügt. (I33b54)
- Fügen Sie
SandboxedUiAdapter
den ParameterwindowInputToken
hinzu. Dies ist erforderlich, damit das Token vonSurfaceControlViewHost
korrekt mit dem Host der eingebetteten Hierarchie verknüpft ist. (Ief578) - Führen Sie
notifyResized
im Hauptthread aus. (I62440) - Absturz im
Session.close()
-Ablauf wurde behoben. (I5392e)
Version 1.0.0-alpha04
21. Juni 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha04
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04
wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Stell den
SdkActivityLauncher
vor. Eine Schnittstelle, über die laufzeitfähige SDKs Aktivitäten starten können. (I5b3dc)
Fehlerkorrekturen
notifyZOrderChanged
-Race-Bedingung wurde korrigiert. Stellt sicher, dass der UI-Anbieter über alle Änderungen der Z-Reihenfolge benachrichtigt wird. Der UI-Anbieter wird nicht explizit benachrichtigt, wenn die Z-Reihenfolge vonSandboxedSdkView
vor dem Aufrufen von openSession geändert wird.
Version 1.0.0-alpha03
24. Mai 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha03
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03
wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
StateChangedListener
informiert die Anwendung über Änderungen in der UI-Sitzung
API-Änderungen
StateChangedListener
wurde hinzugefügt, umErrorConsumer
(Icd5d3) zu ersetzen.
Fehlerkorrekturen
- Die Race-Bedingung
notifyZOrderChanged
wurde korrigiert, sodass der UI-Anbieter über alle Änderungen der Z-Reihenfolge benachrichtigt wurde.
Version 1.0.0-alpha02
19. April 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha02
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02
wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- flaking testMovingSandboxedSdkViewLayoutChangesChildLayout-Test deaktiviert
Version 1.0.0-alpha01
8. März 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha01
, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01
und androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01
wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
- Dies sind neue Jetpack-Bibliotheken, die Anwendungen und laufzeitfähige SDKs (Privacy Sandbox) verwenden können, damit die Anwendung (der Client) jede vom SDK (Anbieter) bereitgestellte UI hosten kann.