privacysandbox ui

  
DA FARE
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.

Crea un nuovo problema

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 minSdk predefinito dall'API 21 all'API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
  • È stato aggiunto il supporto di PoolingContainer alla gestione delle sessioni SharedUiContainer: la sessione UI condivisa non viene chiusa se il contenitore si trova all'interno di un PoolingContainer. (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 in SessionObserver.onUiContainerChanged() se SandboxedUiAdapterSignalOptions.OBSTRUCTIONS è incluso nel SessionObserverFactory.signalOptions associato. 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 SandboxedSdkView e SandboxedSdkUi su "Sotto", indicando che la superficie del fornitore ora si trova sotto la finestra del client. È stato aggiunto il supporto per il provider UI per ricevere MotionEvents in questa modalità dopo essere stato ricevuto dalla finestra del client.
  • È stato aggiunto un campo signalOptions all'interfaccia SessionObserverFactory. Può essere utilizzato per definire un insieme di opzioni di stringa che verranno utilizzate per determinare quali indicatori vengono raccolti per il SessionObserver associato. Il set iniziale di indicatori è definito in SandboxedUiAdapterSignalOptions. Se non sono impostate opzioni di segnale, verranno chiamati solo SessionObserver.onSessionOpened() e SessionObserver.onSessionClosed().

Modifiche alle API

  • SessionConstants rinominato in SessionData in SandboxedUiAdapter.openSession().

Problemi noti

  • Quando l'SDK viene caricato in SDK Runtime e l'ordine Z di SandboxedSdkView o SandboxedSdkUi è "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 estende ViewGroup. Le nuove API utilizzano il concetto di gestione delle sessioni simile a quello di SandboxedSdkView e SandboxedUiAdapter.
  • 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 utilizzando SharedUiAdapter introdotto nella stessa release. (Ic60b0)
  • È stato aggiunto SharedUiContainer che 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 SharedUiAdapter per 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 di SandboxedUiAdapter. (I501f6)

Correzioni di bug

  • Calcola la visibilità quando viene chiamato onVisibilityAggregated. (I91c69)

Problemi noti

  • Se inserito all'interno di un PoolingContainer, SharedUiContainer chiude 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 SandboxedSdkUi che può essere utilizzato per visualizzare contenuti remoti all'interno di un'interfaccia utente Compose. Questo oggetto utilizza i concetti esistenti di SandboxedSdkView per la gestione delle sessioni e i listener di eventi. (I009cf)
  • È stata modificata la firma di SandboxedUiAdapter.openSession in modo da includere un nuovo parametro SessionConstants che sostituisce il precedente windowInputToken. Questo parametro deve essere utilizzato per passare valori che rimarranno costanti per la durata di SandboxedUiAdapter.Session. (Ibc0df, I28435)

Problemi noti

  • Gli eventi SessionObserver non vengono inviati per SandboxedSdkUi quando viene scorro.
  • SandboxedSdkUi non viene ritagliato dalle visualizzazioni principali quando è in modalità Z-above.

Modifiche alle API

  • Rimuovi il codice SDKActivityLauncher ritirato (I49a4f)
  • È stata separata la logica di registrazione della fabbrica di osservatori da SandboxedUiAdapter aggiungendo una nuova interfaccia SessionObserverFactoryRegistry. (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à

  • StateChangedListener sostituito con SandboxedSdkViewEventListener. 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 SandboxedSdkViewEventListener per l'ascolto degli eventi dell'interfaccia utente all'interno di SandboxedSdkView. Questa versione rimuove anche StateChangedListener. (Id71ea)

Correzioni di bug

  • Rimossa la logica dei limiti di ritaglio da SandboxedSdkView. Ciò causerà problemi di UX se SandboxedSdkView viene inserito in un contenitore scorrevole e orderProviderUiAboveClientUi(false) non è stato chiamato (finché non viene corretto il bug del framework sottostante). (Id420d)
  • È stato corretto RemoteException che poteva verificarsi se il processo remoto si interrompeva durante l'utilizzo di DelegatingSandboxedUiAdapter.

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 estende SandboxedUiAdapter e può essere utilizzata per la delega tra diversi SandboxedUiAdapters. Quando questo adattatore è impostato su un contenitore client come SandboxedSdkView, l'adattatore di delega può modificare l'adattatore delegato utilizzando updateDelegate. In questo modo la sessione esistente verrà chiusa e verrà creato un nuovo SandboxedUiAdapter.Session per il nuovo delegato. Ciò consente transizioni fluide tra i delegati. (I5f1c5, I9e3e7)
  • È stato aggiunto un supporto migliore per il SandboxedSdkView padding. (Ic414f)

Correzioni di bug

  • È stato corretto un problema NullPointerException che 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 SandboxedSdkView solo se la finestra contenente il SandboxedSdkView è visibile.
  • È stata aggiornata la logica di SessionObserver per inviare onUiContainerChanged quando cambia la visibilità della finestra contenente SandboxedSdkView.

Correzioni di bug

  • Richiama onUiContainerChanged quando 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 AbstractSandboxedUiAdapter e AbstractSandboxedUiAdapter.AbstractSession che possono essere utilizzate dai fornitori di UI per evitare di implementare le intere interfacce SandboxedUiAdapter o Session. È consigliabile che i fornitori di UI utilizzino queste classi astratte.
  • È stata aggiunta la logica registerObserverFactory che consente di allegare un SessionObserverFactory a un SandboxedUiAdapter. Quando un SessionObserverFactory è collegato a un adattatore, viene creato un SessionObserver per ogni nuova sessione UI creata per l'adattatore. L'SessionObserver creato riceverà un callback onSessionOpened all'apertura della sessione UI. Quando la presentazione dell'interfaccia utente della visualizzazione di Session cambia, viene chiamato SessionObserver.onUiContainerChanged. onUiContainerChanged è limitato e verrà chiamato al massimo ogni 200 ms.
  • È stato aggiunto SandboxedSdkViewUiInfo, che può essere creato a partire da Bundle inviato in data SessionObserver.onUiContainerChanged. Questo oggetto rappresenta lo stato della UI di SandboxedSdkView che ospita la sessione della UI. Contiene informazioni su altezza e larghezza, un Rect che 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.onUiContainerChanged e SandboxedSdkViewUiInfo. (Ie98bc)
  • Aggiungi l'interfaccia SessionObserver e la logica di registrazione. (I047dc)
  • Aggiungi AbstractSandboxedUiAdapter e AbstractSession. (I3617a)

Problemi noti

  • Quando il fornitore dell'interfaccia utente si trova nello stesso processo dell'applicazione client, SessionObserver.onUiContainerChanged non 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 SandboxedSdkView all'interno di un PoolingContainer, ad esempio un RecyclerView. Quando un SandboxedSdkView ha un elemento principale che è un PoolingContainer, il ciclo di vita delle sessioni UI sarà allineato a quello del PoolingContainer per 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 ViewGroups in modalità di compatibilità con le versioni precedenti. (I8de92)
  • Quando uno dei genitori di SandboxedSdkView è un PoolingContainer, chiudi la sessione UI quando PoolingContainer indica che le risorse possono essere rilasciate, anziché al distacco della finestra. (I2046b)

Contributo esterno

  • GestureDetectorCompat è ora deprecato in quanto GestureDetector è disponibile a partire dal giorno minSdk. (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 SandboxedSdkView nella visualizzazione "genitore di delimitazione" in cui può scorrere. In questo modo, i contenuti di SandboxedSdkView non oscurano altre visualizzazioni o altri componenti dell'interfaccia utente al di fuori della visualizzazione dei contenuti principale. (I9ea94)

Modifiche alle API

  • Rinomina SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction in orderProviderUiAboveClientUi (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 windowInputToken a SandboxedUiAdapter (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 windowInputToken a SandboxedUiAdapter. Questa operazione è necessaria per garantire che il token di SurfaceControlViewHost sia associato correttamente all'host della gerarchia incorporata. (Ief578)
  • Esegui notifyResized all'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 di SandboxedSdkView viene 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à

  • StateChangedListener comunica all'applicazione le modifiche nella sessione UI

Modifiche alle API

  • Aggiunta di StateChangedListener in sostituzione di ErrorConsumer (Icd5d3)

Correzioni di bug

  • È stata corretta la condizione di competizione notifyZOrderChanged in 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).