privacysandbox ui
| Ultimo aggiornamento | Release stabile | Candidato per la release | Versione beta | Versione alpha |
|---|---|---|---|---|
| 20 maggio 2025 | - | - | - | 1.0.0-alpha16 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza da privacysandbox-ui, devi aggiungere il repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli elementi 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-alpha16" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha16" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha16" }
Kotlin
dependencies { // Use to implement privacysandbox ui-client implementation("androidx.privacysandbox.ui:ui-client:1.0.0-alpha16") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha16") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha16") }
Per ulteriori informazioni sulle dipendenze, consulta Aggiungere dipendenze di compilazione.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa raccolta. Prima di crearne uno nuovo, 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 del Tracker dei problemi.
Versione 1.0
Versione 1.0.0-alpha16
20 maggio 2025
androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 viene rilasciato. La versione 1.0.0-alpha16 contiene questi commit.
Nuove funzionalità
- È stata aggiunta la logica per misurare le ostruzioni su
SandboxedSdkView, che verrà inviata inSessionObserver.onUiContainerChanged()seSandboxedUiAdapterSignalOptions.OBSTRUCTIONSè incluso nelSessionObserverFactory.signalOptionsassociato. Le ostruzioni vengono segnalate in base alla visualizzazione stessa.
Modifiche all'API
SandboxedSdkUiè stato spostato da ui-client in una nuova libreria ui-client-compose.- È stata aggiunta la logica per misurare le ostruzioni nei contenitori dell'interfaccia utente. (I34bea)
Correzioni di bug
- È stato corretto il problema relativo a
SandboxedSdkView.setAlpha(), che ora aggiorna l'alpha 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 vengono rilasciati. La versione 1.0.0-alpha15 contiene questi commit.
Nuove funzionalità
- Imposta l'ordinamento Z predefinito di
SandboxedSdkVieweSandboxedSdkUisu "sotto", a indicare che la superficie del provider è ora posizionata sotto la finestra del client. È stato aggiunto il supporto per il provider dell'interfaccia utente per ricevereMotionEventsin questa modalità dopo che è stato ricevuto dalla finestra del client. - È stato aggiunto un campo
signalOptionsall'interfacciaSessionObserverFactory. Può essere utilizzato per definire un insieme di opzioni String che verranno utilizzate per determinare quali indicatori vengono raccolti per ilSessionObserverassociato. L'insieme iniziale di indicatori è definito inSandboxedUiAdapterSignalOptions. Se non sono impostate opzioni di indicatore, verranno chiamate soloSessionObserver.onSessionOpened()eSessionObserver.onSessionClosed().
Modifiche all'API
SessionConstantsè stato rinominato 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 provider 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 vengono rilasciati. La versione 1.0.0-alpha14 contiene questi commit.
Nuove funzionalità
- Ora puoi creare una "UI condivisa", ovvero un'interfaccia utente che può avere elementi di proprietà del cliente e del fornitore. L'interfaccia utente 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 sono dietro il flag
SharedUiPresentationApi@RequiresOptIn.
Modifiche all'API
- Sono state aggiunte le API di gestione della sessione e di registrazione degli asset a
SharedUiContainer. La gestione delle sessioni viene implementata utilizzandoSharedUiAdapterintrodotto nella stessa release. (Ic60b0) - È stato aggiunto
SharedUiContainerche può ospitare l'interfaccia utente di proprietà del cliente e del provider. Posiziona tutte le sue 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 di visualizzazione 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 in 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 vengono rilasciati. La versione 1.0.0-alpha13 contiene questi commit.
Nuove funzionalità
- È stato aggiunto un oggetto Composable denominato
SandboxedSdkUiche può essere utilizzato per visualizzare contenuti remoti all'interno di un'interfaccia utente di Compose. Questo oggetto utilizza i concetti esistenti diSandboxedSdkViewper la gestione delle sessioni e gli ascoltatori di eventi. (I009cf) - È stata modificata la firma
SandboxedUiAdapter.openSessionper includere un nuovo parametroSessionConstantsche sostituisce il precedentewindowInputToken. Questo parametro deve essere utilizzato per passare valori che saranno costanti per tutta la durata delSandboxedUiAdapter.Session. (Ibc0df, I28435)
Problemi noti
- Gli eventi
SessionObservernon vengono inviati perSandboxedSdkUiquando si scorre. SandboxedSdkUinon viene tagliato dalle visualizzazioni principali quando è in modalità Z-above.
Modifiche all'API
- Rimuovi il codice
SDKActivityLauncherdeprecato (I49a4f) - La logica di registrazione della fabbrica dell'osservatore è stata separata 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 vengono 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 di visualizzazione dell'interfaccia utente, di chiusura della sessione e di errore della sessione.
Modifiche all'API
- Aggiunge
SandboxedSdkViewEventListenerper l'ascolto degli eventi dell'interfaccia utente all'interno diSandboxedSdkView. Questa versione rimuove ancheStateChangedListener. (Id71ea)
Correzioni di bug
- È stata 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 (fino a quando il bug del framework di base non viene corretto). (Id420d) - È stato corretto un problema
RemoteExceptionche potrebbe verificarsi se il processo remoto si arresta in modo anomalo 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 vengono rilasciati. La versione 1.0.0-alpha11 contiene questi commit.
Nuove funzionalità
- È stata introdotta un'API sperimentale,
DelegatingSandboxedUiAdapter, che estendeSandboxedUiAdaptere può essere utilizzata per delegare tra diversiSandboxedUiAdapters. Quando questo adattatore è impostato su un contenitore client comeSandboxedSdkView, l'adattatore di delega può modificare l'adattatore delegato utilizzandoupdateDelegate. La sessione esistente verrà chiusa e verrà creato un nuovoSandboxedUiAdapter.Sessionper il nuovo delegato. In questo modo, le transizioni tra i delegati sono fluide. (I5f1c5, I9e3e7) - È stato aggiunto un supporto migliore per il
SandboxedSdkViewpadding. (Ic414f)
Correzioni di bug
- È stato corretto l'errore
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 vengono rilasciati. La versione 1.0.0-alpha10 contiene questi commit.
Nuove funzionalità
- È stata aggiornata la logica di apertura della sessione in modo da aprire una sessione all'interno di un
SandboxedSdkViewsolo se la finestra contenente ilSandboxedSdkViewè visibile. - È stata aggiornata la logica di
SessionObserverper inviareonUiContainerChangedquando la visibilità della finestra contenenteSandboxedSdkViewcambia.
Correzioni di bug
- Richiama
onUiContainerChangedquando la visibilità della finestra cambia (I541cf) - È stato rimosso il riepilogo manuale dell'accesso alle nuove API di piattaforma, poiché questo avviene automaticamente tramite la definizione del modello 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 clienti 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 vengono 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 l'intera interfacciaSandboxedUiAdapteroSession. Per i fornitori di UI è consigliabile utilizzare queste classi astratte. - È stata aggiunta la logica
registerObserverFactoryche consente di associare unSessionObserverFactorya unSandboxedUiAdapter. Quando unSessionObserverFactoryè collegato a un adattatore, viene creato unSessionObserverper ogni nuova sessione dell'interfaccia utente creata per quell'adattatore. IlSessionObservercreato riceverà unonSessionOpenedcallback quando viene aperta la sessione dell'interfaccia utente. Quando la presentazione dell'interfaccia utente della visualizzazione diSessioncambia, viene chiamatoSessionObserver.onUiContainerChanged.onUiContainerChangedviene limitato e verrà chiamato al massimo ogni 200 ms. - È stato aggiunto
SandboxedSdkViewUiInfo, che può essere creato dalBundleinviato inSessionObserver.onUiContainerChanged. Questo oggetto rappresenta lo stato dell'interfaccia utente delSandboxedSdkViewche ospita la sessione dell'interfaccia utente. Contiene informazioni su altezza e larghezza, unRectche rappresenta la geometria della visualizzazione visibile sullo schermo e un suggerimento di opacità che rappresenta l'opacità della visualizzazione.
Modifiche all'API
- Aggiungi il suggerimento di opacità a
SandboxedSdkViewUiInfo. (I093ac) - Aggiungi
SessionObserver.onUiContainerChangedeSandboxedSdkViewUiInfo. (Ie98bc) - Aggiungi l'interfaccia e la logica di registrazione di
SessionObserver. (I047dc) - Aggiungi
AbstractSandboxedUiAdaptereAbstractSession. (I3617a)
Problemi noti
- Quando il provider 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 vengono 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 relative sessioni dell'interfaccia utente sarà allineato a quello delPoolingContainerper garantire che la sessione possa essere mantenuta dopo il distacco della finestra.
Modifiche all'API
- API di attività di Privacy Sandbox ritirate. Ora queste API sono disponibili nella raccolta Attività dedicata
androidx.privacysandbox.activity. (I68beb)
Correzioni di bug
- È stato risolto un bug di rendering durante la visualizzazione di contenuti remoti all'interno di 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 principali di
SandboxedSdkViewè unPoolingContainer, chiudi la sessione dell'interfaccia utente quandoPoolingContainerindica che le risorse possono essere rilasciate, anziché al distacco della finestra. (I2046b)
Contributo esterno
GestureDetectorCompatè stato ritirato perchéGestureDetectorè disponibile dalminSdk. (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 vengono rilasciati. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto della compatibilità con le versioni precedenti per la raccolta. Nell'API 33 e versioni precedenti, la visualizzazione del provider verrà visualizzata all'interno del processo dell'app, in un classloader diverso. (If0b7a)
- È stata aggiunta una logica che consente di eseguire il commit del ridimensionamento dei contenitori host e del provider nello stesso frame per evitare un comportamento discontinuo visibile dell'interfaccia utente. (Ic2cd9)
Modifiche all'API
- Il valore MinSdk della 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 vengono rilasciati. La versione 1.0.0-alpha06 contiene questi commit.
Nuove funzionalità
- È stata aggiunta la logica per il clip
SandboxedSdkViewalla vista "principale delimitante" in cui può scorrere. In questo modo, i contenuti diSandboxedSdkViewnon oscurano altre visualizzazioni o componenti dell'interfaccia utente al di fuori della visualizzazione dei contenuti principali. (I9ea94)
Modifiche all'API
- Rinomina
SandboxedSdkView.setZOrderOnTopAndEnableUserInteractioninorderProviderUiAboveClientUi(Iecb7e)
Correzioni di bug
- Invia all'host il valore Z-order corretto. (Ib0ddf)
- Trasferisci lo stato attivo del tocco solo per scorrimenti/lanci 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 vengono rilasciati. La versione 1.0.0-alpha05 contiene questi commit.
Nuove funzionalità
- È stata aggiunta la logica per trasferire lo stato attivo al tocco all'host durante lo scorrimento e i gesti fling provenienti da
SandboxedSdkView. In questo modo, l'interfaccia utente del provider di hosting del contenitore scorrevole del cliente può rispondere correttamente a scorrimenti e scorrimenti rapidi.
Modifiche all'API
- Parametro
windowInputTokenaggiunto aSandboxedUiAdapter(Ief578)
Correzioni di bug
- Imposta lo stato della sessione su Attivo dopo il primo sorteggio (I36f3f)
- Risolvi il problema di layout con
SandboxedSdkView. (I09cb8) - È stata aggiunta la logica per trasferire lo stato attivo tocco all'host. (I33b54)
- Aggiungi il parametro
windowInputTokenaSandboxedUiAdapter. Questo è necessario per garantire che il token diSurfaceControlViewHostsia associato correttamente all'host della gerarchia incorporata. (Ief578) - Esegui
notifyResizedall'interno del thread principale. (I62440) - Correggi 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 vengono 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
- Correggi la condizione di gara
notifyZOrderChanged. Garantisce che il fornitore dell'interfaccia utente venga informato di tutte le modifiche all'ordine Z. Il provider 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 vengono rilasciati. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
StateChangedListenerinforma l'applicazione delle modifiche nella sessione dell'interfaccia utente
Modifiche all'API
- È stato aggiunto
StateChangedListenerper sostituireErrorConsumer(Icd5d3)
Correzioni di bug
- È stata corretta la condizione di gara
notifyZOrderChangedin modo che il provider dell'interfaccia utente venga informato di 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 vengono rilasciati. La versione 1.0.0-alpha02 contiene questi commit.
Correzioni di bug
- Test di verifica irregolare disattivatoChangingSandboxedSdkViewLayoutChangesChildLayout
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 vengono 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 in fase di esecuzione (Privacy Sandbox) possono utilizzare per consentire all'applicazione (client) di ospitare qualsiasi interfaccia utente fornita dall'SDK (provider).