privacysandbox ui
| Ultimo aggiornamento | Release stabile | Candidato per la release | Release beta | Release alpha |
|---|---|---|---|---|
| 17 dicembre 2025 | - | - | - | 1.0.0-alpha17 |
Dichiara le dipendenze
Per aggiungere una dipendenza da privacysandbox-ui, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per
la tua app o il tuo modulo:
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") }
Per saperne di più sulle dipendenze, consulta Aggiungi dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa libreria. Prima di segnalare un nuovo problema, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.0
Versione 1.0.0-alpha17
17 dicembre 2025
androidx.privacysandbox.ui:ui-*:1.0.0-alpha17 è stato rilasciato. La versione 1.0.0-alpha17 contiene questi commit.
- Questa libreria è stata ritirata e non riceverà aggiornamenti futuri.
Modifiche all'API
- API ritirate privacysandbox.ui (I858d5, b/452878636)
- minSdk è stato modificato dall'API 21 alla 23 (Ifa120, b/380448311)
- Separare SandboxedSdkUi sperimentale da quello non sperimentale. (Ie9154, b/430118542)
- SdkSandboxControllerCompat è stato migrato a sdkruntime-provider (Id99fb, b/426122358)
- L'app client non può modificare il livello Z dell'interfaccia utente del fornitore rispetto alla finestra del client utilizzando SandboxedSdkView o SandboxedSdkUi. (I87e9f, b/413659157)
Correzioni di bug
- Spostamento di
minSdkpredefinito dall'API 21 all'API 23 (Ibdfca, b/380448311, b/435705964, b/435705223) - È stato aggiunto il supporto di
PoolingContaineralla gestione delle sessioniSharedUiContainer: la sessione UI condivisa non viene chiusa se il contenitore si trova all'interno di unPoolingContainer. (Iabe16, b/352500350)
Versione 1.0.0-alpha16
20 maggio 2025
androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 è stato rilasciato. La versione 1.0.0-alpha16 contiene questi commit.
Nuove funzionalità
- È stata aggiunta la logica per misurare le ostruzioni su
SandboxedSdkView, che verranno inviate inSessionObserver.onUiContainerChanged()seSandboxedUiAdapterSignalOptions.OBSTRUCTIONSè incluso nelSessionObserverFactory.signalOptionsassociato. Gli ostacoli vengono segnalati in relazione alla visuale stessa.
Modifiche alle API
SandboxedSdkUiè stato spostato da ui-client in una nuova libreria ui-client-compose.- È stata aggiunta la logica per misurare le ostruzioni sui contenitori dell'interfaccia utente. (I34bea)
Correzioni di bug
- È stato corretto
SandboxedSdkView.setAlpha(), che ora aggiorna l'alfa della visualizzazione dei contenuti.
Versione 1.0.0-alpha15
26 marzo 2025
androidx.privacysandbox.ui:ui-client:1.0.0-alpha15, androidx.privacysandbox.ui:ui-core:1.0.0-alpha15 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15 sono stati rilasciati. La versione 1.0.0-alpha15 contiene questi commit.
Nuove funzionalità
- Imposta l'ordine Z predefinito di
SandboxedSdkVieweSandboxedSdkUisu "Sotto", indicando che la superficie del fornitore ora si trova sotto la finestra del client. È stato aggiunto il supporto per il provider UI per ricevereMotionEventsin questa modalità dopo essere stato ricevuto dalla finestra del client. - È stato aggiunto un campo
signalOptionsall'interfacciaSessionObserverFactory. Può essere utilizzato per definire un insieme di opzioni di stringa che verranno utilizzate per determinare quali indicatori vengono raccolti per ilSessionObserverassociato. Il set iniziale di indicatori è definito inSandboxedUiAdapterSignalOptions. Se non sono impostate opzioni di segnale, verranno chiamati soloSessionObserver.onSessionOpened()eSessionObserver.onSessionClosed().
Modifiche alle API
SessionConstantsrinominato inSessionDatainSandboxedUiAdapter.openSession().
Problemi noti
- Quando l'SDK viene caricato in SDK Runtime e l'ordine Z di
SandboxedSdkViewoSandboxedSdkUiè "sopra", il gesto viene ricevuto esclusivamente dalla finestra del fornitore e non viene più trasferito alla finestra del client.
Versione 1.0.0-alpha14
26 febbraio 2025
androidx.privacysandbox.ui:ui-client:1.0.0-alpha14, androidx.privacysandbox.ui:ui-core:1.0.0-alpha14 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14 sono stati rilasciati. La versione 1.0.0-alpha14 contiene questi commit.
Nuove funzionalità
- Ora puoi creare "UI condivise", ovvero UI che possono contenere elementi di proprietà del client e del fornitore. L'UI condivisa può essere ospitata utilizzando
SharedUiContainer, che estendeViewGroup. Le nuove API utilizzano il concetto di gestione delle sessioni simile a quello diSandboxedSdkVieweSandboxedUiAdapter. - Tutte le API aggiunte in questa release si trovano dietro il flag
SharedUiPresentationApi@RequiresOptIn.
Modifiche alle API
- Sono state aggiunte API di gestione delle sessioni e registrazione degli asset a
SharedUiContainer. La gestione delle sessioni viene implementata utilizzandoSharedUiAdapterintrodotto nella stessa release. (Ic60b0) - È stato aggiunto
SharedUiContainerche può ospitare UI di proprietà del cliente e del fornitore. Posiziona tutte le visualizzazioni secondarie nell'angolo in alto a sinistra. (Ia7310) - È stato aggiunto il supporto della compatibilità con le versioni precedenti per
SharedUiAdapter. (I56d7a) - È stato aggiunto
SharedUiAdapterper la gestione delle sessioni dei contenitori View che possono ospitare UI di proprietà del cliente e del fornitore. La logica di gestione delle sessioni è simile a quella diSandboxedUiAdapter. (I501f6)
Correzioni di bug
- Calcola la visibilità quando viene chiamato
onVisibilityAggregated. (I91c69)
Problemi noti
- Se inserito all'interno di un
PoolingContainer,SharedUiContainerchiude la sessione al distacco della finestra.
Versione 1.0.0-alpha13
29 gennaio 2025
androidx.privacysandbox.ui:ui-client:1.0.0-alpha13, androidx.privacysandbox.ui:ui-core:1.0.0-alpha13 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13 sono stati rilasciati. La versione 1.0.0-alpha13 contiene questi commit.
Nuove funzionalità
- È stato aggiunto un oggetto componibile chiamato
SandboxedSdkUiche può essere utilizzato per visualizzare contenuti remoti all'interno di un'interfaccia utente Compose. Questo oggetto utilizza i concetti esistenti diSandboxedSdkViewper la gestione delle sessioni e i listener di eventi. (I009cf) - È stata modificata la firma di
SandboxedUiAdapter.openSessionin modo da includere un nuovo parametroSessionConstantsche sostituisce il precedentewindowInputToken. Questo parametro deve essere utilizzato per passare valori che rimarranno costanti per la durata diSandboxedUiAdapter.Session. (Ibc0df, I28435)
Problemi noti
- Gli eventi
SessionObservernon vengono inviati perSandboxedSdkUiquando viene scorro. SandboxedSdkUinon viene ritagliato dalle visualizzazioni principali quando è in modalità Z-above.
Modifiche alle API
- Rimuovi il codice
SDKActivityLauncherritirato (I49a4f) - È stata separata la logica di registrazione della fabbrica di osservatori da
SandboxedUiAdapteraggiungendo una nuova interfacciaSessionObserverFactoryRegistry. (I245cc)
Versione 1.0.0-alpha12
11 dicembre 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha12, androidx.privacysandbox.ui:ui-core:1.0.0-alpha12 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12 sono stati rilasciati. La versione 1.0.0-alpha12 contiene questi commit.
Nuove funzionalità
StateChangedListenersostituito conSandboxedSdkViewEventListener. Questo listener di eventi può essere utilizzato per ascoltare gli eventi relativi all'interfaccia utente visualizzata, alla chiusura della sessione e agli errori della sessione.
Modifiche alle API
- Aggiunge
SandboxedSdkViewEventListenerper l'ascolto degli eventi dell'interfaccia utente all'interno diSandboxedSdkView. Questa versione rimuove ancheStateChangedListener. (Id71ea)
Correzioni di bug
- Rimossa la logica dei limiti di ritaglio da
SandboxedSdkView. Ciò causerà problemi di UX seSandboxedSdkViewviene inserito in un contenitore scorrevole eorderProviderUiAboveClientUi(false)non è stato chiamato (finché non viene corretto il bug del framework sottostante). (Id420d) - È stato corretto
RemoteExceptionche poteva verificarsi se il processo remoto si interrompeva durante l'utilizzo diDelegatingSandboxedUiAdapter.
Versione 1.0.0-alpha11
13 novembre 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha11, androidx.privacysandbox.ui:ui-core:1.0.0-alpha11 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11 sono stati rilasciati. La versione 1.0.0-alpha11 contiene questi commit.
Nuove funzionalità
- È stata introdotta un'API sperimentale,
DelegatingSandboxedUiAdapter, che estendeSandboxedUiAdaptere può essere utilizzata per la delega tra diversiSandboxedUiAdapters. Quando questo adattatore è impostato su un contenitore client comeSandboxedSdkView, l'adattatore di delega può modificare l'adattatore delegato utilizzandoupdateDelegate. In questo modo la sessione esistente verrà chiusa e verrà creato un nuovoSandboxedUiAdapter.Sessionper il nuovo delegato. Ciò consente transizioni fluide tra i delegati. (I5f1c5, I9e3e7) - È stato aggiunto un supporto migliore per il
SandboxedSdkViewpadding. (Ic414f)
Correzioni di bug
- È stato corretto un problema
NullPointerExceptionche poteva verificarsi in un evento di layout globale.
Versione 1.0.0-alpha10
18 settembre 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha10, androidx.privacysandbox.ui:ui-core:1.0.0-alpha10 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 sono stati rilasciati. La versione 1.0.0-alpha10 contiene questi commit.
Nuove funzionalità
- È stata aggiornata la logica di apertura della sessione in modo che una sessione venga aperta all'interno di un
SandboxedSdkViewsolo se la finestra contenente ilSandboxedSdkViewè visibile. - È stata aggiornata la logica di
SessionObserverper inviareonUiContainerChangedquando cambia la visibilità della finestra contenenteSandboxedSdkView.
Correzioni di bug
- Richiama
onUiContainerChangedquando cambia la visibilità della finestra (I541cf) - È stata rimossa la definizione manuale dell'accesso alle nuove API della piattaforma, poiché avviene automaticamente tramite la modellazione delle API quando si utilizza R8 con AGP 7.3 o versioni successive (ad es. R8 versione 3.3) e per tutte le build quando si utilizza AGP 8.1 o versioni successive (ad es. D8 versione 8.1). I client che non utilizzano AGP sono invitati a eseguire l'aggiornamento alla versione 8.1 o successive di D8. Consulta questo articolo per ulteriori dettagli. (If6b4c, b/345472586)
Versione 1.0.0-alpha09
26 giugno 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09 sono stati rilasciati. La versione 1.0.0-alpha09 contiene questi commit.
Nuove funzionalità
- Sono state introdotte le classi astratte
AbstractSandboxedUiAdaptereAbstractSandboxedUiAdapter.AbstractSessionche possono essere utilizzate dai fornitori di UI per evitare di implementare le intere interfacceSandboxedUiAdapteroSession. È consigliabile che i fornitori di UI utilizzino queste classi astratte. - È stata aggiunta la logica
registerObserverFactoryche consente di allegare unSessionObserverFactorya unSandboxedUiAdapter. Quando unSessionObserverFactoryè collegato a un adattatore, viene creato unSessionObserverper ogni nuova sessione UI creata per l'adattatore. L'SessionObservercreato riceverà un callbackonSessionOpenedall'apertura della sessione UI. Quando la presentazione dell'interfaccia utente della visualizzazione diSessioncambia, viene chiamatoSessionObserver.onUiContainerChanged.onUiContainerChangedè limitato e verrà chiamato al massimo ogni 200 ms. - È stato aggiunto
SandboxedSdkViewUiInfo, che può essere creato a partire daBundleinviato in dataSessionObserver.onUiContainerChanged. Questo oggetto rappresenta lo stato della UI diSandboxedSdkViewche ospita la sessione della UI. Contiene informazioni su altezza e larghezza, unRectche rappresenta la geometria della visualizzazione visibile sullo schermo e un suggerimento sull'opacità che rappresenta l'opacità della visualizzazione.
Modifiche alle API
- Aggiungi un suggerimento sull'opacità a
SandboxedSdkViewUiInfo. (I093ac) - Aggiungi
SessionObserver.onUiContainerChangedeSandboxedSdkViewUiInfo. (Ie98bc) - Aggiungi l'interfaccia
SessionObservere la logica di registrazione. (I047dc) - Aggiungi
AbstractSandboxedUiAdaptereAbstractSession. (I3617a)
Problemi noti
- Quando il fornitore dell'interfaccia utente si trova nello stesso processo dell'applicazione client,
SessionObserver.onUiContainerChangednon viene inviato quando il contenitore scorre.
Versione 1.0.0-alpha08
14 maggio 2024
androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08 sono stati rilasciati. La versione 1.0.0-alpha08 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per l'utilizzo di
SandboxedSdkViewall'interno di unPoolingContainer, ad esempio unRecyclerView. Quando unSandboxedSdkViewha un elemento principale che è unPoolingContainer, il ciclo di vita delle sessioni UI sarà allineato a quello delPoolingContainerper garantire che la sessione possa persistere durante il distacco della finestra.
Modifiche alle API
- API Privacy Sandbox Activity deprecate. Queste API ora sono disponibili nella raccolta Attività dedicata
androidx.privacysandbox.activity. (I68beb)
Correzioni di bug
- Risolto il bug di rendering durante la visualizzazione di contenuti remoti all'interno dei contenitori di pooling. (I804df)
- È stato corretto un bug che causava problemi di rendering per
ViewGroupsin modalità di compatibilità con le versioni precedenti. (I8de92) - Quando uno dei genitori di
SandboxedSdkViewè unPoolingContainer, chiudi la sessione UI quandoPoolingContainerindica che le risorse possono essere rilasciate, anziché al distacco della finestra. (I2046b)
Contributo esterno
GestureDetectorCompatè ora deprecato in quantoGestureDetectorè disponibile a partire dal giornominSdk. (Icc4cd)
Versione 1.0.0-alpha07
18 ottobre 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07 sono stati rilasciati. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- Aggiunta del supporto della compatibilità con le versioni precedenti per la libreria. Sull'API 33 e versioni precedenti, la visualizzazione del fornitore verrà visualizzata all'interno del processo dell'app, in un class loader diverso. (If0b7a)
- È stata aggiunta una logica che consente di eseguire il commit del ridimensionamento dei contenitori host e provider nello stesso frame per evitare problemi visibili dell'interfaccia utente. (Ic2cd9)
Modifiche alle API
- MinSdk per la libreria è stato aumentato all'API 21. (I474b8)
Versione 1.0.0-alpha06
20 settembre 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06 sono stati rilasciati. La versione 1.0.0-alpha06 contiene questi commit.
Nuove funzionalità
- È stata aggiunta la logica per ritagliare
SandboxedSdkViewnella visualizzazione "genitore di delimitazione" in cui può scorrere. In questo modo, i contenuti diSandboxedSdkViewnon oscurano altre visualizzazioni o altri componenti dell'interfaccia utente al di fuori della visualizzazione dei contenuti principale. (I9ea94)
Modifiche alle API
- Rinomina
SandboxedSdkView.setZOrderOnTopAndEnableUserInteractioninorderProviderUiAboveClientUi(Iecb7e)
Correzioni di bug
- Invia il valore corretto dell'ordine Z all'host. (Ib0ddf)
- Trasferisci la messa a fuoco tattile solo per gli scorrimenti/i movimenti rapidi verticali. (I0528c)
Versione 1.0.0-alpha05
9 agosto 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 sono stati rilasciati. La versione 1.0.0-alpha05 contiene questi commit.
Nuove funzionalità
- È stata aggiunta una logica per trasferire la messa a fuoco del tocco all'host durante lo scorrimento e i movimenti rapidi provenienti da
SandboxedSdkView. In questo modo, l'interfaccia utente del fornitore di hosting del contenitore scorrevole del client risponde correttamente a scorrimenti e movimenti rapidi.
Modifiche alle API
- Aggiunto il parametro
windowInputTokenaSandboxedUiAdapter(Ief578)
Correzioni di bug
- Imposta lo stato della sessione su Attivo dopo il primo sorteggio (I36f3f)
- Risolto il problema di layout con
SandboxedSdkView. (I09cb8) - È stata aggiunta la logica per trasferire lo stato attivo del tocco all'host. (I33b54)
- Aggiungi il parametro
windowInputTokenaSandboxedUiAdapter. Questa operazione è necessaria per garantire che il token diSurfaceControlViewHostsia associato correttamente all'host della gerarchia incorporata. (Ief578) - Esegui
notifyResizedall'interno del thread principale. (I62440) - Risolto l'arresto anomalo nel flusso
Session.close(). (I5392e)
Versione 1.0.0-alpha04
21 giu 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 sono stati rilasciati. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- Presenta
SdkActivityLauncher. Un'interfaccia per consentire agli SDK abilitati per il runtime di avviare attività. (I5b3dc)
Correzioni di bug
- Correzione della race condition
notifyZOrderChanged. Garantisce che il fornitore dell'interfaccia utente riceva una notifica per tutte le modifiche all'ordine Z. Il fornitore dell'interfaccia utente non riceverà una notifica esplicita se l'ordine Z diSandboxedSdkViewviene modificato prima dell'invocazione di openSession.
Versione 1.0.0-alpha03
24 maggio 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 sono stati rilasciati. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
StateChangedListenercomunica all'applicazione le modifiche nella sessione UI
Modifiche alle API
- Aggiunta di
StateChangedListenerin sostituzione diErrorConsumer(Icd5d3)
Correzioni di bug
- È stata corretta la condizione di competizione
notifyZOrderChangedin modo che il provider dell'interfaccia utente riceva una notifica per tutte le modifiche all'ordine Z
Versione 1.0.0-alpha02
19 aprile 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02 sono stati rilasciati. La versione 1.0.0-alpha02 contiene questi commit.
Correzioni di bug
- Disabled flaking testChangingSandboxedSdkViewLayoutChangesChildLayout test
Versione 1.0.0-alpha01
8 marzo 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01 sono stati rilasciati. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
- Si tratta di nuove librerie Jetpack che le applicazioni e gli SDK abilitati per il runtime (Privacy Sandbox) possono utilizzare per consentire all'applicazione (client) di ospitare qualsiasi UI fornita dall'SDK (provider).