privacysandbox-ui

  
À FAIRE
Dernière mise à jour Version stable Version finale Version bêta Version alpha
17 décembre 2025 - - - 1.0.0-alpha17

Déclarer des dépendances

Pour ajouter une dépendance sur privacysandbox-ui, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou de votre module :

Groovy

dependencies {
    // Use to implement privacysandbox ui-client
    implementation "androidx.privacysandbox.ui:ui-client:1.0.0-alpha17"

    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha17"

    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha17"
}

Kotlin

dependencies {
    // Use to implement privacysandbox ui-client
    implementation("androidx.privacysandbox.ui:ui-client:1.0.0-alpha17")

    // Use to implement privacysandbox ui-core
    implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha17")

    // Use to implement privacysandbox ui-provider
    implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha17")

    
}

Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Version 1.0

Version 1.0.0-alpha17

17 décembre 2025

Publication d'androidx.privacysandbox.ui:ui-*:1.0.0-alpha17. La version 1.0.0-alpha17 contient ces commits.

  • Cette bibliothèque est obsolète et ne recevra plus de mises à jour.

Modifications apportées à l'API - API privacysandbox.ui obsolètes (I858d5, b/452878636) - minSdk est passé de l'API 21 à l'API 23 (Ifa120, b/380448311) - Dissociation de l'SandboxedSdkUi expérimentale de celle non expérimentale. (Ie9154, b/430118542) - SdkSandboxControllerCompat migré vers sdkruntime-provider (Id99fb, b/426122358) - L'application cliente ne peut pas modifier le niveau Z de l'UI du fournisseur par rapport à la fenêtre cliente à l'aide de SandboxedSdkView ou SandboxedSdkUi. (I87e9f, b/413659157)

Correction de bugs

  • Déplacement de la minSdk par défaut de l'API 21 vers l'API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
  • Ajout de la prise en charge de PoolingContainer à la gestion des sessions SharedUiContainer : la session d'UI partagée n'est pas fermée si le conteneur se trouve dans un PoolingContainer. (Iabe16, b/352500350)

Version 1.0.0-alpha16

20 mai 2025

Publication d'androidx.privacysandbox.ui:ui-*:1.0.0-alpha16. La version 1.0.0-alpha16 contient ces commits.

Nouvelles fonctionnalités

  • Ajout d'une logique pour mesurer les obstructions sur SandboxedSdkView, qui sera envoyé dans SessionObserver.onUiContainerChanged() si SandboxedUiAdapterSignalOptions.OBSTRUCTIONS est inclus dans le SessionObserverFactory.signalOptions associé. Les obstructions sont signalées par rapport à la vue elle-même.

Modifications apportées à l'API

  • Déplacement de SandboxedSdkUi de ui-client vers une nouvelle bibliothèque ui-client-compose.
  • Ajout d'une logique pour mesurer les obstructions sur les conteneurs d'UI. (I34bea)

Correction de bugs

  • Correction de SandboxedSdkView.setAlpha(), qui met désormais à jour le canal alpha de sa vue de contenu.

Version 1.0.0-alpha15

26 mars 2025

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha15, androidx.privacysandbox.ui:ui-core:1.0.0-alpha15 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15. La version 1.0.0-alpha15 contient ces commits.

Nouvelles fonctionnalités

  • Définissez l'ordre Z par défaut de SandboxedSdkView et SandboxedSdkUi sur "below" (en dessous), ce qui indique que la surface du fournisseur est désormais placée sous la fenêtre du client. Ajout de la prise en charge du fournisseur d'UI pour recevoir MotionEvents dans ce mode après avoir été reçu par la fenêtre client.
  • Ajout d'un champ signalOptions à l'interface SessionObserverFactory. Cela permet de définir un ensemble d'options de chaîne qui seront utilisées pour déterminer les signaux collectés pour la SessionObserver associée. L'ensemble initial de signaux est défini dans SandboxedUiAdapterSignalOptions. Si aucune option de signal n'est définie, seuls SessionObserver.onSessionOpened() et SessionObserver.onSessionClosed() seront appelés.

Modifications apportées à l'API

  • SessionConstants a été renommé SessionData dans SandboxedUiAdapter.openSession().

Problèmes connus

  • Lorsque le SDK est chargé dans le SDK Runtime et que l'ordre de plan de SandboxedSdkView ou SandboxedSdkUi est défini sur "au-dessus", le geste est exclusivement reçu par la fenêtre du fournisseur et n'est plus transféré à la fenêtre du client.

Version 1.0.0-alpha14

26 février 2025

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha14, androidx.privacysandbox.ui:ui-core:1.0.0-alpha14 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14. La version 1.0.0-alpha14 contient ces commits.

Nouvelles fonctionnalités

  • Vous pouvez désormais créer une "UI partagée", c'est-à-dire une UI pouvant comporter des éléments appartenant au client et au fournisseur. L'UI partagée peut être hébergée à l'aide de SharedUiContainer, qui étend ViewGroup. Les nouvelles API utilisent le concept de gestion des sessions, comme SandboxedSdkView et SandboxedUiAdapter.
  • Toutes les API ajoutées dans cette version sont derrière le flag SharedUiPresentationApi @RequiresOptIn.

Modifications apportées à l'API

  • Ajout des API de gestion de session et d'enregistrement des composants à SharedUiContainer. La gestion des sessions est implémentée à l'aide de SharedUiAdapter introduit dans la même version. (Ic60b0)
  • Ajout de SharedUiContainer pouvant héberger l'UI appartenant au client et au fournisseur. Elle place toutes ses vues enfants en haut à gauche. (Ia7310)
  • Ajout de la rétrocompatibilité pour SharedUiAdapter. (I56d7a)
  • Ajout de SharedUiAdapter pour la gestion des sessions des conteneurs d'affichage pouvant héberger des UI appartenant au client et au fournisseur. La logique de gestion des sessions est semblable à celle de SandboxedUiAdapter. (I501f6)

Correction de bugs

  • Calculer la visibilité lorsque onVisibilityAggregated est appelé. (I91c69)

Problèmes connus

  • Lorsqu'il est placé dans un PoolingContainer, SharedUiContainer ferme la session lors du détachement de la fenêtre.

Version 1.0.0-alpha13

29 janvier 2025

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha13, androidx.privacysandbox.ui:ui-core:1.0.0-alpha13 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13. La version 1.0.0-alpha13 contient ces commits.

Nouvelles fonctionnalités

  • Ajout d'un objet composable appelé SandboxedSdkUi, qui peut être utilisé pour afficher du contenu à distance dans une interface utilisateur Compose. Cet objet utilise les concepts SandboxedSdkView existants pour la gestion des sessions et les écouteurs d'événements. (I009cf)
  • Modification de la signature SandboxedUiAdapter.openSession pour inclure un nouveau paramètre SessionConstants qui remplace l'ancien windowInputToken. Ce paramètre doit être utilisé pour transmettre des valeurs qui seront constantes pendant toute la durée de vie de SandboxedUiAdapter.Session. (Ibc0df, I28435)

Problèmes connus

  • Les événements SessionObserver ne sont pas envoyés pour SandboxedSdkUi lorsqu'il est fait défiler.
  • SandboxedSdkUi n'est pas coupé par les vues parentes lorsqu'il est en mode Z-above.

Modifications apportées à l'API

  • Suppression du code SDKActivityLauncher obsolète. (I49a4f)
  • La logique d'enregistrement de l'usine d'observateurs a été séparée de SandboxedUiAdapter en ajoutant une nouvelle interface SessionObserverFactoryRegistry. (I245cc)

Version 1.0.0-alpha12

11 décembre 2024

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha12, androidx.privacysandbox.ui:ui-core:1.0.0-alpha12 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12. La version 1.0.0-alpha12 contient ces commits.

Nouvelles fonctionnalités

  • StateChangedListener a été remplacé par SandboxedSdkViewEventListener. Cet écouteur d'événements peut être utilisé pour écouter les événements d'affichage de l'UI, de fermeture de session et d'erreur de session.

Modifications apportées à l'API

  • Ajoute SandboxedSdkViewEventListener pour écouter les événements d'UI dans SandboxedSdkView. Cette version supprime également StateChangedListener. (Id71ea)

Correction de bugs

  • Suppression de la logique des limites de découpage de SandboxedSdkView. Cela entraînera des problèmes d'UX si SandboxedSdkView est placé dans un conteneur à défilement et que orderProviderUiAboveClientUi(false) n'a pas été appelé (jusqu'à ce que le bug du framework sous-jacent soit corrigé). (Id420d)
  • Correction d'une exception RemoteException qui pouvait se produire si le processus à distance s'arrêtait lors de l'utilisation de DelegatingSandboxedUiAdapter.

Version 1.0.0-alpha11

13 novembre 2024

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha11, androidx.privacysandbox.ui:ui-core:1.0.0-alpha11 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11. La version 1.0.0-alpha11 contient ces commits.

Nouvelles fonctionnalités

  • Introduction d'une API expérimentale, DelegatingSandboxedUiAdapter, qui étend SandboxedUiAdapter et peut être utilisée pour déléguer entre différents SandboxedUiAdapters. Lorsque cet adaptateur est défini sur un conteneur client tel que SandboxedSdkView, l'adaptateur de délégation peut modifier l'adaptateur délégué à l'aide de updateDelegate. La session existante sera fermée et un nouveau SandboxedUiAdapter.Session sera créé pour le nouveau délégué. Cela permet des transitions fluides entre les délégués. (I5f1c5, I9e3e7)
  • Meilleure prise en charge de SandboxedSdkView pour la marge intérieure. (Ic414f)

Correction de bugs

  • Correction d'une NullPointerException qui pouvait se produire lors d'un événement de mise en page globale.

Version 1.0.0-alpha10

18 septembre 2024

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha10, androidx.privacysandbox.ui:ui-core:1.0.0-alpha10 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10. La version 1.0.0-alpha10 contient ces commits.

Nouvelles fonctionnalités

  • Mise à jour de la logique d'ouverture de session pour n'ouvrir une session dans un SandboxedSdkView que si la fenêtre contenant le SandboxedSdkView est visible.
  • Mise à jour de la logique SessionObserver pour envoyer onUiContainerChanged lorsque la visibilité de la fenêtre contenant SandboxedSdkView change.

Correction de bugs

  • Appeler onUiContainerChanged lorsque la visibilité de la fenêtre change (I541cf)
  • Suppression de la présentation manuelle de l'accès aux nouvelles API de plate-forme, car cela se fait automatiquement via la modélisation d'API lorsque vous utilisez R8 avec AGP 7.3 ou version ultérieure (par exemple, R8 version 3.3) et pour toutes les versions lorsque vous utilisez AGP 8.1 ou version ultérieure (par exemple, D8 version 8.1). Les clients qui n'utilisent pas AGP sont invités à passer à la version 8.1 ou ultérieure de D8. Consultez cet article pour en savoir plus. (If6b4c, b/345472586)

Version 1.0.0-alpha09

26 juin 2024

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09. La version 1.0.0-alpha09 contient ces commits.

Nouvelles fonctionnalités

  • Introduction des classes abstraites AbstractSandboxedUiAdapter et AbstractSandboxedUiAdapter.AbstractSession qui peuvent être utilisées par les fournisseurs d'UI pour éviter d'implémenter l'intégralité des interfaces SandboxedUiAdapter ou Session. Il est recommandé aux fournisseurs d'UI d'utiliser ces classes abstraites.
  • Ajout d'une logique registerObserverFactory qui permet d'associer un SessionObserverFactory à un SandboxedUiAdapter. Lorsqu'un SessionObserverFactory est associé à un adaptateur, un SessionObserver est créé pour chaque nouvelle session d'UI créée pour cet adaptateur. Le SessionObserver créé recevra un rappel onSessionOpened lorsque la session d'UI sera ouverte. SessionObserver.onUiContainerChanged est appelé lorsque la présentation de l'UI de la vue Session change. onUiContainerChanged est limité et sera appelé au maximum toutes les 200 ms.
  • Ajout de SandboxedSdkViewUiInfo qui peut être créé à partir de Bundle envoyé dans SessionObserver.onUiContainerChanged. Cet objet représente l'état de l'UI du SandboxedSdkView qui héberge la session d'UI. Il contient des informations sur la hauteur et la largeur, un Rect représentant la géométrie de la vue visible à l'écran et un indice d'opacité représentant l'opacité de la vue.

Modifications apportées à l'API

  • Ajoutez un indice d'opacité à SandboxedSdkViewUiInfo. (I093ac)
  • Ajoutez SessionObserver.onUiContainerChanged et SandboxedSdkViewUiInfo. (Ie98bc)
  • Ajoutez l'interface SessionObserver et la logique d'enregistrement. (I047dc)
  • Ajoutez AbstractSandboxedUiAdapter et AbstractSession. (I3617a)

Problèmes connus

  • Lorsque le fournisseur d'UI se trouve dans le même processus que l'application cliente, SessionObserver.onUiContainerChanged n'est pas envoyé lorsque le conteneur défile.

Version 1.0.0-alpha08

14 mai 2024

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08. La version 1.0.0-alpha08 contient ces commits.

Nouvelles fonctionnalités

  • Ajout de la prise en charge de l'utilisation de SandboxedSdkView dans un PoolingContainer tel qu'un RecyclerView. Lorsqu'un SandboxedSdkView a un parent qui est un PoolingContainer, le cycle de vie de ses sessions d'UI est aligné sur celui du PoolingContainer pour s'assurer que la session peut persister lors du détachement de la fenêtre.

Modifications apportées à l'API

  • API Activity Privacy Sandbox obsolètes. Ces API sont désormais disponibles dans la bibliothèque d'activités dédiée androidx.privacysandbox.activity. (I68beb)

Correction de bugs

  • Correction d'un bug d'affichage lors de l'affichage de contenu distant dans des conteneurs de mise en commun. (I804df)
  • Correction d'un bug qui entraînait des problèmes d'affichage pour ViewGroups en mode rétrocompatibilité. (I8de92)
  • Lorsqu'un des parents de SandboxedSdkView est un PoolingContainer, fermez la session d'UI lorsque le PoolingContainer indique que les ressources peuvent être libérées, au lieu de la fermeture de la fenêtre. (I2046b)

Contribution externe

  • GestureDetectorCompat est désormais obsolète, car GestureDetector est disponible depuis le minSdk. (Icc4cd)

Version 1.0.0-alpha07

18 octobre 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07. Liste des commits de la version 1.0.0-alpha07.

Nouvelles fonctionnalités

  • Ajout de la rétrocompatibilité pour la bibliothèque. Sur l'API 33 et les versions antérieures, la vue du fournisseur sera affichée dans le processus de l'application, dans un classloader différent. (If0b7a)
  • Ajout d'une logique permettant de valider le redimensionnement des conteneurs hôte et fournisseur dans le même frame pour éviter les à-coups visibles dans l'UI. (Ic2cd9)

Modifications apportées à l'API

  • Le MinSdk de la bibliothèque est passé à l'API 21. (I474b8)

Version 1.0.0-alpha06

20 septembre 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06. Liste des commits de la version 1.0.0-alpha06.

Nouvelles fonctionnalités

  • Ajout d'une logique pour découper SandboxedSdkView dans la vue "bounding parent" dans laquelle il peut défiler. Cela garantit que le contenu de SandboxedSdkView n'occlut pas d'autres vues ni aucun composant d'UI en dehors de la vue de contenu racine. (I9ea94)

Modifications apportées à l'API

  • SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction a été renommé orderProviderUiAboveClientUi. (Iecb7e)

Correction de bugs

  • Envoyez la valeur d'ordre Z correcte à l'hôte. (Ib0ddf)
  • Ne transférer la mise au point tactile que pour les défilements/balayages verticaux. (I0528c)

Version 1.0.0-alpha05

9 août 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05. Liste des commits de la version 1.0.0-alpha05

Nouvelles fonctionnalités

  • Ajout d'une logique pour transférer la sélection tactile à l'hôte lors des gestes de défilement et de balayage provenant de SandboxedSdkView. Cela permet à l'UI du fournisseur d'hébergement du conteneur à faire défiler du client de répondre correctement aux défilements et aux balayages.

Modifications apportées à l'API

  • Ajout du paramètre windowInputToken à SandboxedUiAdapter (Ief578)

Correction de bugs

  • Définir l'état de la session sur "Actif" après le premier tirage (I36f3f)
  • Correction d'un problème de mise en page avec SandboxedSdkView. (I09cb8)
  • Ajout d'une logique pour transférer la sélection tactile à l'hôte. (I33b54)
  • Ajout du paramètre windowInputToken à SandboxedUiAdapter. Cette étape est nécessaire pour s'assurer que le jeton de SurfaceControlViewHost est correctement associé à l'hôte de la hiérarchie intégrée. (Ief578)
  • Exécutez notifyResized dans le thread principal. (I62440)
  • Correction d'un plantage dans le flux Session.close(). (I5392e)

Version 1.0.0-alpha04

21 juin 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04. Liste des commits de la version 1.0.0-alpha04

Nouvelles fonctionnalités

  • Présentez le SdkActivityLauncher. Interface permettant aux SDK compatibles avec l'environnement d'exécution de lancer des activités. (I5b3dc)

Correction de bugs

  • Correction de la condition de concurrence notifyZOrderChanged. Garantit que le fournisseur d'UI est informé de toutes les modifications de l'ordre Z. Le fournisseur d'UI ne sera pas explicitement averti si l'ordre Z du SandboxedSdkView est modifié avant l'appel d'openSession.

Version 1.0.0-alpha03

24 mai 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03. Liste des commits de la version 1.0.0-alpha03

Nouvelles fonctionnalités

  • StateChangedListener informe l'application des modifications dans la session d'UI.

Modifications apportées à l'API

  • Ajout de StateChangedListener pour remplacer ErrorConsumer (Icd5d3)

Correction de bugs

  • Correction de la condition de course notifyZOrderChanged afin que le fournisseur d'UI soit informé de toutes les modifications de l'ordre Z

Version 1.0.0-alpha02

19 avril 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02. Liste des commits de la version 1.0.0-alpha02

Correction de bugs

  • Test Disabled flaking testChangingSandboxedSdkViewLayoutChangesChildLayout

Version 1.0.0-alpha01

8 mars 2023

Publication d'androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01 et androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01. Liste des commits de la version 1.0.0-alpha01

Nouvelles fonctionnalités

  • Il s'agit de nouvelles bibliothèques Jetpack que les applications et les SDK compatibles avec l'environnement d'exécution (Privacy Sandbox) peuvent utiliser pour permettre à l'application (client) d'héberger n'importe quelle UI fournie par le SDK (fournisseur).