UI de privacysandbox
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
11 décembre 2024 | - | - | - | 1.0.0-alpha12 |
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 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") }
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.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.0
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é parSandboxedSdkViewEventListener
. Cet écouteur d'événements peut être utilisé pour écouter les événements d'UI affichée, de session fermée et d'erreur de session.
Modifications apportées à l'API
- Ajoute
SandboxedSdkViewEventListener
pour écouter les événements d'interface utilisateur dansSandboxedSdkView
. Cette version supprime égalementStateChangedListener
. (Id71ea)
Correction de bugs
- Suppression de la logique de limites de découpage de
SandboxedSdkView
. Cela entraînera des problèmes d'expérience utilisateur siSandboxedSdkView
est placé dans un conteneur à faire défiler et queorderProviderUiAboveClientUi(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 distant s'arrêtait lors de l'utilisation deDelegatingSandboxedUiAdapter
.
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 étendSandboxedUiAdapter
et peut être utilisée pour déléguer entre différentsSandboxedUiAdapters
. Lorsque cet adaptateur est défini sur un conteneur client tel queSandboxedSdkView
, l'adaptateur délégué peut modifier l'adaptateur délégué à l'aide deupdateDelegate
. La session existante est alors fermée, et unSandboxedUiAdapter.Session
est créé pour le nouveau délégué. Cela permet des transitions fluides entre les délégués. (I5f1c5, I9e3e7) - Amélioration de la prise en charge de la marge intérieure par
SandboxedSdkView
. (Ic414f)
Correction de bugs
- Correction d'une exception
NullPointerException
pouvant se produire lors d'un événement de mise en page global.
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 leSandboxedSdkView
est visible. - Mise à jour de la logique
SessionObserver
pour envoyeronUiContainerChanged
lorsque la visibilité de la fenêtre contenantSandboxedSdkView
change.
Correction de bugs
- Appeler
onUiContainerChanged
lorsque la visibilité de la fenêtre change (I541cf) - Suppression de la description manuelle de l'accès aux nouvelles API de la plate-forme, car cela se produit 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 tous les builds 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 de D8 ou ultérieure. 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
- Ajout des classes abstraites
AbstractSandboxedUiAdapter
etAbstractSandboxedUiAdapter.AbstractSession
, qui peuvent être utilisées par les fournisseurs d'UI pour éviter d'implémenter l'ensemble des interfacesSandboxedUiAdapter
ouSession
. Nous recommandons aux fournisseurs d'UI d'utiliser ces classes abstraites. - Ajout d'une logique
registerObserverFactory
permettant d'associer unSessionObserverFactory
à unSandboxedUiAdapter
. Lorsqu'unSessionObserverFactory
est associé à un adaptateur, unSessionObserver
est créé pour chaque nouvelle session d'UI créée pour cet adaptateur. LeSessionObserver
créé recevra un rappelonSessionOpened
lorsque la session d'interface utilisateur sera ouverte. Lorsque la présentation de l'UI de la vue deSession
change,SessionObserver.onUiContainerChanged
est appelé.onUiContainerChanged
est limité et sera appelé au maximum toutes les 200 ms. - Ajout de
SandboxedSdkViewUiInfo
, qui peut être créé à partir duBundle
envoyé dansSessionObserver.onUiContainerChanged
. Cet objet représente l'état de l'UI deSandboxedSdkView
qui héberge la session d'UI. Il contient des informations sur la hauteur et la largeur, unRect
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
etSandboxedSdkViewUiInfo
. (Ie98bc) - Ajout de l'interface
SessionObserver
et de la logique d'enregistrement. (I047dc) - Ajoutez
AbstractSandboxedUiAdapter
etAbstractSession
. (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 unePoolingContainer
, telle qu'uneRecyclerView
. Lorsqu'unSandboxedSdkView
a un parent qui est unPoolingContainer
, le cycle de vie de ses sessions d'UI est aligné sur celui duPoolingContainer
pour s'assurer que la session peut persister lors de la dissociation de la fenêtre.
Modifications apportées à l'API
- API Activity de la 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 de rendu lors de l'affichage de contenu distant dans des conteneurs de mise en pool. (I804df)
- Correction d'un bug qui entraînait des problèmes de rendu pour
ViewGroups
en mode rétrocompatibilité. (I8de92) - Lorsqu'un des parents de
SandboxedSdkView
est unPoolingContainer
, fermez la session d'interface utilisateur lorsquePoolingContainer
indique que les ressources peuvent être libérées, au lieu de la dissociation de la fenêtre. (I2046b)
Contribution externe
GestureDetectorCompat
est désormais obsolète, carGestureDetector
est disponible depuisminSdk
. (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. Avec l'API 33 et les versions antérieures, la vue du fournisseur est affichée dans le processus de l'application, dans un autre chargeur de classe. (If0b7a)
- Ajout d'une logique permettant de valider le redimensionnement des conteneurs hôte et du fournisseur dans le même frame afin d'éviter les à-coups visibles dans l'UI. (Ic2cd9)
Modifications apportées à l'API
- Le SDK minimal de la bibliothèque a été remplacé par 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 "parente englobante" dans laquelle il peut défiler. Cela garantit que le contenu deSandboxedSdkView
n'obstrue pas d'autres vues ni d'autres composants 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érez le focus tactile que pour les défilements/glisses 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 vers l'hôte lors des gestes de défilement et de balayage à partir de
SandboxedSdkView
. Cela permet à l'UI du fournisseur d'hébergement de conteneur à défilement 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 "Active" 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 vers l'hôte. (I33b54)
- Ajout du paramètre
windowInputToken
àSandboxedUiAdapter
. Cette étape est nécessaire pour vous assurer que le jeton deSurfaceControlViewHost
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
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
. S'assure que le fournisseur d'UI est informé de toutes les modifications d'ordre Z. Le fournisseur d'UI n'est pas explicitement informé si l'ordre Z de l'SandboxedSdkView
est modifié avant l'appel de 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 apportées à la session d'UI.
Modifications apportées à l'API
- Ajout de
StateChangedListener
pour remplacerErrorConsumer
. (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 de non-régularité désactivéChangingSandboxedSdkViewLayoutChangesChildLayout
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).