privacysandbox ui

  
DA FARE
Ultimo aggiornamento Release stabile Candidato per la release Versione beta Versione alpha
11 dicembre 2024 - - - 1.0.0-alpha12

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:

Alla moda

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")

    
}

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.

Creare un nuovo problema

Per ulteriori informazioni, consulta la documentazione del Monitoraggio problemi.

Versione 1.0

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à

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

Correzioni di bug

  • È stata 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 (fino a quando non verrà corretto il bug del framework sottostante). (Id420d)
  • È stato corretto un problema RemoteException che potrebbe verificarsi se il processo remoto si arresta in modo anomalo 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 vengono 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 delegare tra diversi SandboxedUiAdapters. Quando questo adattatore è impostato su un contenitore client come SandboxedSdkView, l'adattatore di delega può modificare l'adattatore delegato utilizzando updateDelegate. La sessione esistente verrà chiusa e verrà creato un nuovo SandboxedUiAdapter.Session per il nuovo delegato. In questo modo, le transizioni tra i delegati sono fluide. (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 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 SandboxedSdkView solo se la finestra contenente il SandboxedSdkView è visibile.
  • È stata aggiornata la logica di SessionObserver per inviare onUiContainerChanged quando la visibilità della finestra contenente SandboxedSdkView cambia.

Correzioni di bug

  • Richiama onUiContainerChanged quando la visibilità della finestra cambia (I541cf)
  • È stato rimosso il riepilogo manuale dell'accesso alle nuove API di piattaforma, poiché 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 AbstractSandboxedUiAdapter e AbstractSandboxedUiAdapter.AbstractSession che possono essere utilizzate dai fornitori di UI per evitare di implementare l'intera interfaccia SandboxedUiAdapter o Session. Per i fornitori di UI è consigliabile utilizzare queste classi astratte.
  • È stata aggiunta la logica registerObserverFactory che consente di associare un SessionObserverFactory a un SandboxedUiAdapter. Quando un SessionObserverFactory è collegato a un adattatore, viene creato un SessionObserver per ogni nuova sessione dell'interfaccia utente creata per quell'adattatore. Il SessionObserver creato riceverà un onSessionOpened callback quando viene aperta la sessione dell'interfaccia utente. Quando la presentazione dell'interfaccia utente della visualizzazione di Session cambia, viene chiamato SessionObserver.onUiContainerChanged. onUiContainerChanged viene limitato e verrà chiamato al massimo ogni 200 ms.
  • È stato aggiunto SandboxedSdkViewUiInfo, che può essere creato dal Bundle inviato in SessionObserver.onUiContainerChanged. Questo oggetto rappresenta lo stato dell'interfaccia utente del SandboxedSdkView che ospita la sessione dell'interfaccia utente. Contiene informazioni su altezza e larghezza, un Rect che 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.onUiContainerChanged e SandboxedSdkViewUiInfo. (Ie98bc)
  • Aggiungi l'interfaccia e la logica di registrazione SessionObserver. (I047dc)
  • Aggiungi AbstractSandboxedUiAdapter e AbstractSession. (I3617a)

Problemi noti

  • Quando il provider 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 vengono 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 relative sessioni dell'interfaccia utente sarà allineato a quello del PoolingContainer per garantire che la sessione possa essere mantenuta dopo il distacco della finestra.

Modifiche all'API

  • API di Privacy Sandbox per le attività 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 ViewGroups in modalità di compatibilità con le versioni precedenti. (I8de92)
  • Quando uno dei principali di SandboxedSdkView è un PoolingContainer, chiudi la sessione dell'interfaccia utente quando PoolingContainer indica che le risorse possono essere rilasciate, anziché al distacco della finestra. (I2046b)

Contributo esterno

  • GestureDetectorCompat è stato ritirato perché GestureDetector è disponibile dal 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 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 provider nello stesso frame per evitare un comportamento discontinuo visibile dell'interfaccia utente. (Ic2cd9)

Modifiche all'API

  • Il valore MinSdk della libreria è stato aggiornato 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 SandboxedSdkView alla vista "principale delimitante" in cui può scorrere. In questo modo, i contenuti di SandboxedSdkView non oscurano altre visualizzazioni o componenti dell'interfaccia utente al di fuori della visualizzazione dei contenuti principali. (I9ea94)

Modifiche all'API

  • Rinomina SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction in orderProviderUiAboveClientUi (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 windowInputToken aggiunto a SandboxedUiAdapter (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 windowInputToken a SandboxedUiAdapter. Questo è necessario 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 un 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 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 vengono rilasciati. La versione 1.0.0-alpha03 contiene questi commit.

Nuove funzionalità

  • StateChangedListener informa l'applicazione delle modifiche nella sessione dell'interfaccia utente

Modifiche all'API

  • È stato aggiunto StateChangedListener per sostituire ErrorConsumer (Icd5d3)

Correzioni di bug

  • È stata corretta la condizione di gara notifyZOrderChanged in 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 disabilitatoChangingSandboxedSdkViewLayoutChangesChildLayout

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).