Browser

Visualizzare le pagine web nel browser predefinito dell'utente.
Ultimo aggiornamento Release stabile Candidato per la release Versione beta Alpha Release
2 luglio 2025 1.8.0 - 1.9.0-beta01 -

Dichiarazione di dipendenze

Per aggiungere una dipendenza da Browser, 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 che ti servono nel file build.gradle per la tua app o il tuo modulo:

Groovy

dependencies {
    implementation "androidx.browser:browser:1.8.0"
}

Kotlin

dependencies {
    implementation("androidx.browser:browser:1.8.0")
}

Per saperne di più sulle dipendenze, consulta Aggiungere 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 crearne uno nuovo, dai un'occhiata ai problemi esistenti in questa libreria. 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 di Issue Tracker.

Versione 1.9

Versione 1.9.0-beta01

2 luglio 2025

androidx.browser:browser:1.9.0-beta01 viene ritirata. La versione 1.9.0-beta01 non contiene modifiche rispetto alla versione alpha precedente.

Versione 1.9.0-alpha05

18 giugno 2025

androidx.browser:browser:1.9.0-alpha05 viene ritirata. La versione 1.9.0-alpha05 contiene questi commit.

Modifiche alle API

  • Rimuovere l'annotazione sperimentale dall'API di navigazione effimera (If8b1b)

Versione 1.9.0-alpha04

20 maggio 2025

androidx.browser:browser:1.9.0-alpha04 viene ritirata. La versione 1.9.0-alpha04 contiene questi commit.

Modifiche alle API

  • Aggiunta di un nuovo extra intent per le schede personalizzate (I911e0)
  • Aggiunta delle modalità Browser e MiminalUi a TWADisplayMode (I230b5)
  • È stata aggiunta l'API di controllo delle funzionalità per la navigazione temporanea (I17d42)
  • Rimuovi l'annotazione sperimentale per l'API PendingSession (Id6fe3)
  • Aggiunta dell'API di controllo della funzionalità della scheda Autenticazione (Ifc029)
  • Rimossa l'annotazione sperimentale per la riduzione a icona della scheda personalizzata (If2b44)

Versione 1.9.0-alpha03

23 aprile 2025

androidx.browser:browser:1.9.0-alpha03 viene ritirata. La versione 1.9.0-alpha03 contiene questi commit.

Modifiche alle API

  • È stata rimossa l'annotazione sperimentale dalla scheda Autenticazione. (I786ff)

Versione 1.9.0-alpha02

9 aprile 2025

androidx.browser:browser:1.9.0-alpha02 viene ritirata. La versione 1.9.0-alpha02 contiene questi commit.

Nuove funzionalità

Modifiche alle API

  • Sono stati aggiunti overload per CustomTabsClient#createPendingAuthTabSession. (I71c3a)
  • API della scheda Autenticazione aggiornate (Iaf9b1)
  • TrustedWebActivityIntent ora include la modalità client API Launch Handler che consente a un browser di utilizzare questa API. (Ifc95c)
  • TrustedWebActivityIntent ora include gli URI dei file aperti tramite i filtri di intent registrati dell'app e concede al browser le autorizzazioni di lettura/scrittura per questi file. (I2134a)
  • TrustedWebActivityIntent ora include l'URL lanciato originariamente nei suoi extra, aggiungendo contesto per il browser quando viene utilizzato dai gestori di protocollo. (I3759a)
  • È stata aggiunta una nuova API per attivare/disattivare il pulsante di chiusura per le schede personalizzate. (I35acd)
  • Aggiunto il supporto per la personalizzazione dell'icona del pulsante di chiusura alla scheda Autenticazione (Iaf877)

Versione 1.9.0-alpha01

29 gennaio 2025

androidx.browser:browser:1.9.0-alpha01 viene ritirata. La versione 1.9.0-alpha01 contiene questi commit.

Modifiche alle API

  • È stato aggiunto il supporto per la connessione/sessione del browser alla scheda Autenticazione. (I6e47b)
  • È stata aggiunta una nuova API CustomTabsSession#isEphemeralBrowsingSupported che determina se la navigazione effimera è supportata o meno (Ie4dea, b/384548523)
  • Aggiunto il supporto dei parametri dello schema di colori alle API della scheda Autenticazione. (I630e1)
  • Aggiunta dell'opzione di navigazione effimera sperimentale alle schede personalizzate (I9549d)
  • API della scheda Autenticazione sperimentali aggiornate (I8b674)
  • Aggiungi una nuova API per verificare se il provider di schede personalizzate supporta più reti. (I4307a)
  • Aggiungi una nuova categoria di filtri per intent di servizio per supportare più reti. (I4354a)
  • Aggiungi una nuova API per impostare/ottenere la rete associata quando avvii un URL su una scheda personalizzata. (I493e1)
  • Aggiunte API sperimentali per la scheda Autenticazione (I9b4d4)
  • Nuove API sperimentali per PendingSession (Ib40e5)

Correzioni di bug

  • Documentazione Javadoc di AuthTabIntent aggiornata (I2490c)
  • Supporto delle sessioni fisse nella scheda Auth (I4e280)
  • Questa libreria ora utilizza le annotazioni di nullabilità JSpecify, che sono di tipo use. Gli sviluppatori Kotlin devono utilizzare il seguente argomento del compilatore per imporre l'utilizzo corretto: -Xjspecify-annotations=strict (questo è il valore predefinito a partire dalla versione 2.1.0 del compilatore Kotlin). (Ic7bf5, b/326456246)
  • È stata rimossa la definizione manuale dell'accesso alle nuove API della piattaforma, poiché questa 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. (I9496c, b/345472586)

Contributo esterno

  • Introduci una nuova chiamata IPC ICustomTabsService#prefetchWithMultipleUrls per evitare più chiamate IPC per singoli URL. (Ie5025)
  • Fai in modo che CustomTabsSession#prefetch propaghi la sessione CustomTabsSession di id(mID) a CustomTabsService. (I4ec7b)
  • Aggiungi una nuova API sperimentaleCustomTabsSession#prefetch(List<Uri>, PrefetchOptions), che esegue l'overload dell'API esistente per accettare più URL. (I54f35)
  • Aggiungi una nuova API sperimentale CustomTabsSession#prefetch(Uri, PrefetchOptions), che tenta di precaricare la pagina principale (senza risorse secondarie) per le navigazioni future. (I340cf)

Versione 1.8

Versione 1.8.0

6 marzo 2024

androidx.browser:browser:1.8.0 viene ritirata. La versione 1.8.0 contiene questi commit.

Modifiche importanti dalla versione 1.7.0

  • È stato aggiunto CustomTabsIntent.Builder#setInitialActivityWidthPx, che consente agli sviluppatori di specificare la larghezza di avvio iniziale di una scheda personalizzata. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetPosition, che consente agli sviluppatori di specificare la posizione della scheda personalizzata quando funge da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetDecorationType, che consente agli sviluppatori di specificare il tipo di decorazione della scheda personalizzata quando funge da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetRoundedCornersPosition, che consente agli sviluppatori di specificare la posizione degli angoli arrotondati quando la scheda personalizzata funge da foglio laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetMaximizationEnabled, che consente agli sviluppatori di attivare o disattivare il pulsante di massimizzazione quando la scheda personalizzata funge da riquadro laterale. (Ie3564)
  • È stato aggiunto il metodo di callback onActivityLayout all'interfaccia CustomTabsCallback per consentire agli sviluppatori di conoscere le coordinate dell'area occupata dalla scheda personalizzata e lo stato in cui viene visualizzata. Viene chiamato quando la scheda personalizzata viene visualizzata per la prima volta sullo schermo e ogni volta che l'area occupata cambia. (I443f6)
  • È stato aggiunto il metodo di callback onWarmupCompleted all'interfaccia CustomTabsCallback per consentire agli sviluppatori di sapere quando CustomTabsClient#warmupfinishes sta riscaldando il processo del browser. (I107cf)
  • È stato aggiunto l'ID sessione agli extra in CustomTabsSession#setEngagementSignalsCallback e CustomTabsSession#isEngagementSignalsApiAvailable. (Iba7f1)
  • Aggiunto il supporto sperimentale per le API schede personalizzate ridotte. (I67f2d)

Versione 1.8.0-rc01

21 febbraio 2024

androidx.browser:browser:1.8.0-rc01 viene rilasciato senza modifiche rispetto alla versione 1.8.0-beta02. La versione 1.8.0-rc01 contiene questi commit.

Versione 1.8.0-beta02

7 febbraio 2024

androidx.browser:browser:1.8.0-beta02 viene ritirata. La versione 1.8.0-beta02 contiene questi commit.

Modifiche alle API

  • È stato rinominato CustomTabsIntent.Builder#setActivitySideSheetEnableMaximization in CustomTabsIntent Builder#setActivitySideSheetMaximizationEnabled ed è stata resa un'API pubblica. Consente agli sviluppatori di attivare o disattivare il pulsante di massimizzazione quando la scheda personalizzata funge da riquadro laterale. (Ie3564)

Versione 1.8.0-beta01

29 novembre 2023

androidx.browser:browser:1.8.0-beta01 viene ritirata. La versione 1.8.0-beta01 contiene questi commit.

Nuove funzionalità

  • Aggiungi il supporto sperimentale per le API per schede personalizzate ridotte al minimo. (I67f2d)

Versione 1.8.0-alpha01

15 novembre 2023

androidx.browser:browser:1.8.0-alpha01 viene ritirata. La versione 1.8.0-alpha01 contiene questi commit.

Nuove funzionalità

  • È stato aggiunto CustomTabsIntent.Builder#setInitialActivityWidthPx, che consente agli sviluppatori di specificare la larghezza di avvio iniziale di una scheda personalizzata. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetBreakpointDp, che consente agli sviluppatori di specificare la larghezza minima della finestra delle schede personalizzate affinché funga da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetPosition, che consente agli sviluppatori di specificare la posizione della scheda personalizzata quando funge da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetEnableMaximization, che consente agli sviluppatori di attivare o disattivare il pulsante di massimizzazione quando la scheda personalizzata funge da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetDecorationType, che consente agli sviluppatori di specificare il tipo di decorazione della scheda personalizzata quando funge da riquadro laterale. (I443f6)
  • È stato aggiunto CustomTabsIntent.Builder#setActivitySideSheetRoundedCornersPosition, che consente agli sviluppatori di specificare la posizione degli angoli arrotondati quando la scheda personalizzata funge da foglio laterale. (I443f6)
  • È stato aggiunto il metodo di callback onActivityLayout all'interfaccia CustomTabsCallback per consentire agli sviluppatori di conoscere le coordinate dell'area occupata dalla scheda personalizzata e lo stato in cui viene visualizzata. Viene chiamato quando la scheda personalizzata viene visualizzata per la prima volta sullo schermo e ogni volta che l'area occupata cambia. (I443f6)
  • È stato aggiunto il metodo di callback onWarmupCompleted all'interfaccia CustomTabsCallback per consentire agli sviluppatori di sapere quando CustomTabsClient#warmuptermina il preriscaldamento del processo del browser. (I107cf)

Correzioni di bug

  • ​​È stato aggiunto l'ID sessione agli extra in CustomTabsSession#setEngagementSignalsCallback e CustomTabsSession#isEngagementSignalsApiAvailable. (Iba7f1)

Versione 1.7

Versione 1.7.0

15 novembre 2023

androidx.browser:browser:1.7.0 viene ritirata. La versione 1.7.0 contiene questi commit.

Modifiche importanti dalla versione 1.6.0

  • Aggiunta CustomTabsIntent.Builder#setBookmarksButtonEnabled che attiva il pulsante dei preferiti nel menu extra. (Ia792e)
  • Aggiunta CustomTabsIntent.Builder#setDownloadButtonEnabled che attiva il pulsante di download nel menu extra. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setSendToExtraDefaultHandlerEnabled che consente l'invio di URL iniziali ad app di gestione esterne. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setTranslateLanguage che specifica la lingua di destinazione con cui deve essere attivata l'interfaccia utente di Translate. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setBackgroundInteractionEnabled che consente le interazioni con l'app in background quando viene avviata una scheda personalizzata parziale. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setShareIdentityEnabled che consente alle schede personalizzate di ottenere l'identità del chiamante. (I7bf2b)
  • È stato aggiunto CustomTabsIntent.Builder#setSecondaryToolbarSwipeUpGesture che imposta un PendingIntent da inviare quando l'utente scorre verso l'alto dalla barra degli strumenti in basso. (Id42a2)

Versione 1.7.0-rc01

1° novembre 2023

androidx.browser:browser:1.7.0-rc01 viene rilasciato senza modifiche. La versione 1.7.0-rc01 contiene questi commit.

  • Nessuna modifica dalla versione alpha-01

Versione 1.7.0-beta01

18 ottobre 2023

androidx.browser:browser:1.7.0-beta01 viene rilasciato senza modifiche. La versione 1.7.0-beta01 contiene questi commit.

Versione 1.7.0-alpha01

4 ottobre 2023

androidx.browser:browser:1.7.0-alpha01 viene ritirata. La versione 1.7.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiunta CustomTabsIntent.Builder#setBookmarksButtonEnabled che attiva il pulsante dei preferiti nel menu extra. (Ia792e)
  • Aggiunta CustomTabsIntent.Builder#setDownloadButtonEnabled che attiva il pulsante di download nel menu extra. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setSendToExtraDefaultHandlerEnabled che consente l'invio di URL iniziali ad app di gestione esterne. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setTranslateLanguage che specifica la lingua di destinazione con cui deve essere attivata l'interfaccia utente di Translate. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setBackgroundInteractionEnabled che consente le interazioni con l'app in background quando viene avviata una scheda personalizzata parziale. (Ia792e)
  • È stato aggiunto CustomTabsIntent.Builder#setShareIdentityEnabled che consente alle schede personalizzate di ottenere l'identità del chiamante. (I7bf2b)
  • È stato aggiunto CustomTabsIntent.Builder#setSecondaryToolbarSwipeUpGesture che imposta un PendingIntent da inviare quando l'utente scorre verso l'alto dalla barra degli strumenti in basso. (Id42a2)

Versione 1.6

Versione 1.6.0

9 agosto 2023

androidx.browser:browser:1.6.0 viene rilasciato senza modifiche rispetto alla versione 1.6.0-rc01. La versione 1.6.0 contiene questi commit.

Versione 1.6.0-rc01

26 luglio 2023

androidx.browser:browser:1.6.0-rc01 viene rilasciato senza modifiche rispetto alla versione 1.6.0-beta01. La versione 1.6.0-rc01 contiene questi commit.

Versione 1.6.0-beta01

21 giu 2023

androidx.browser:browser:1.6.0-beta01 viene rilasciato senza modifiche rispetto alla versione 1.6.0-alpha02. La versione 1.6.0-beta01 contiene questi commit.

Versione 1.6.0-alpha02

7 giugno 2023

androidx.browser:browser:1.6.0-alpha02 viene ritirata. La versione 1.6.0-alpha02 contiene questi commit.

Modifiche alle API

  • CustomTabsSession#getGreatestScrollPercentage rimosso. (I6c5ba)
  • È stata aggiunta una nuova API requestPostMessageChannel che consente di specificare l'origine di destinazione. Ciò significa che gli utenti possono essere certi che i loro messaggi vengano inviati solo al sito web previsto. (Id5b7f)

Correzioni di bug

  • Documentazione di EngagementSignalsCallback aggiornata. (Ie833c)

Versione 1.6.0-alpha01

3 maggio 2023

androidx.browser:browser:1.6.0-alpha01 viene ritirata. La versione 1.6.0-alpha01 contiene questi commit.

Nuove funzionalità

  • È stata aggiunta l'API Engagement Signals, che consente agli sviluppatori di ricevere callback per le interazioni degli utenti sulla pagina web, ad esempio gli scorrimenti. (I835e6)

Modifiche alle API

  • È stata aggiornata l'API Engagement Signals per semplificare la superficie dell'API sul lato dell'implementazione delle schede personalizzate. (Iaa6dc)

Versione 1.5

Versione 1.5.0

8 febbraio 2023

androidx.browser:browser:1.5.0 viene ritirata. La versione 1.5.0 contiene questi commit.

Modifiche importanti dalla versione 1.4.0

  • È stato aggiunto CustomTabsIntent.Builder#setInitialActivityHeightPx, che consente agli sviluppatori di specificare l'altezza di avvio iniziale di una scheda personalizzata e, facoltativamente, il comportamento di ridimensionamento (fisso o ridimensionabile). (I48bd3)
  • È stato aggiunto CustomTabsIntent.Builder#setToolbarCornerRadiusDp, che consente agli sviluppatori di specificare il raggio d'angolo superiore della barra degli strumenti. (I48bd3)
  • È stato aggiunto CustomTabsIntent.Builder#setCloseButtonPosition, che consente agli sviluppatori di impostare la posizione del pulsante di chiusura sulla barra degli strumenti. (I48bd3)
  • È stato aggiunto un metodo di callback onActivityResized all'interfaccia CustomTabsCallback per consentire agli sviluppatori di sapere quando viene ridimensionata una scheda personalizzata. (Ic864e)
  • Rendi asincrone alcune parti delle API CustomTabsCallback. (Ic86df)
  • Compila la lingua dell'app corrente in Accept-Language per impostazione predefinita per allinearsi all'esperienza linguistica per app di Android. (I3d1d7)
  • È stato aggiunto @RequiresPermission alle API che richiedono la concessione dell'autorizzazione POST_NOTIFICATIONS su SDK 33 e versioni successive. È stato sviluppato in un ramo interno. b/238790278 per riferimento.

Versione 1.5.0-rc01

25 gennaio 2023

androidx.browser:browser:1.5.0-rc01 viene ritirata. La versione 1.5.0-rc01 contiene questi commit.

  • Nessuna modifica dalla versione 1.5.0-beta01.

Versione 1.5.0-beta01

11 gennaio 2023

androidx.browser:browser:1.5.0-beta01 viene ritirata. La versione 1.5.0-beta01 contiene questi commit.

  • Nessuna modifica dalla versione 1.5.0-alpha02

Versione 1.5.0-alpha02

7 dicembre 2022

androidx.browser:browser:1.5.0-alpha02 viene ritirata. La versione 1.5.0-alpha02 contiene questi commit.

Modifiche alle API

  • È stato modificato il comportamento di CustomTabsCallback#onActivityResized e sono stati aggiunti nuovi parametri.
  • Il nome EXTRA_ACTIVITY_RESIZE_BEHAVIOR è stato cambiato in EXTRA_ACTIVITY_RESIZE_HEIGHT_BEHAVIOR per riflettere meglio il fatto che si tratta di un'altezza specifica. (Ic864e)
  • Rendi asincrone alcune parti delle API CustomTabsCallback. (Ic86df)

Versione 1.5.0-alpha01

24 ottobre 2022

androidx.browser:browser:1.5.0-alpha01 viene ritirata. La versione 1.5.0-alpha01 contiene questi commit.

Nuove funzionalità

  • È stato aggiunto CustomTabsIntent.Builder#setInitialActivityHeightPx, che consente agli sviluppatori di specificare l'altezza di avvio iniziale di una scheda personalizzata e, facoltativamente, il comportamento di ridimensionamento (fisso o ridimensionabile). (I48bd3)
  • È stato aggiunto CustomTabsIntent.Builder#setToolbarCornerRadiusDp, che consente agli sviluppatori di specificare il raggio d'angolo superiore della barra degli strumenti. (I48bd3)
  • È stato aggiunto CustomTabsIntent.Builder#setCloseButtonPosition, che consente agli sviluppatori di impostare la posizione del pulsante di chiusura sulla barra degli strumenti. (I48bd3)
  • È stato aggiunto un metodo di callback onActivityResized all'interfaccia CustomTabsCallback per consentire agli sviluppatori di sapere quando una scheda personalizzata viene ridimensionata (espansa a tutta l'altezza o ridotta all'altezza di avvio iniziale). (Id99ce)
  • Compila la lingua dell'app corrente in Accept-Language per impostazione predefinita per allinearsi all'esperienza linguistica per app di Android. (I3d1d7)

Modifiche alle API

  • È stato aggiunto @RequiresPermission alle API che richiedono la concessione dell'autorizzazione POST_NOTIFICATIONS su SDK 33 e versioni successive. È stato sviluppato in un ramo interno. b/238790278 per riferimento.

Versione 1.4.0

Versione 1.4.0

3 novembre 2021

androidx.browser:browser:1.4.0 viene ritirata. La versione 1.4.0 contiene questi commit.

Modifiche importanti dalla versione 1.3.0

  • Contrassegna i PendingIntent come PendingIntent.FLAG_IMMUTABLE per la compatibilità con Android 12.

Versione 1.4.0-rc01

13 ottobre 2021

androidx.browser:browser:1.4.0-rc01 viene rilasciato senza modifiche rispetto alla versione 1.4.0-beta01. La versione 1.4.0-rc01 contiene questi commit.

Versione 1.4.0-beta01

29 settembre 2021

androidx.browser:browser:1.4.0-beta01 viene rilasciato senza modifiche dal giorno 1.4.0-alpha01. La versione 1.4.0-beta01 contiene questi commit.

Versione 1.4.0-alpha01

15 settembre 2021

androidx.browser:browser:1.4.0-alpha01 viene ritirata. La versione 1.4.0-alpha01 contiene questi commit.

Correzioni di bug

  • Contrassegna PendingIntent come PendingIntent.FLAG_IMMUTABLE per la compatibilità con Android 12.

Versione 1.3.0

Versione 1.3.0

2 dicembre 2020

androidx.browser:browser:1.3.0 viene ritirata. La versione 1.3.0 contiene questi commit.

Funzionalità principali dalla versione 1.2.0

  • I comandi in formato libero possono essere passati da un browser a un client Trusted Web Activity chiamando TrustedWebActivityServiceConnection#sendExtraCommand. Il cliente può gestirle in TrustedWebActivityService#onExtraCommand
  • È stata aggiunta l'interfaccia TrustedWebActivityCallback che può essere utilizzata da un client Trusted Web Activity per restituire i dati al browser.
  • È stato aggiunto CustomTabsIntent#setShareState, che consente agli sviluppatori di specificare se mostrare o meno un'opzione di condivisione (o lasciare la decisione al browser).
  • Gli sviluppatori ora possono impostare un orientamento dello schermo predefinito con il metodo setScreenOrientation in TrustedWebActivityIntentBuilder
  • Il metodo setNavigationBarDividerColor viene aggiunto a CustomTabColorSchemeParams per supportare la modifica del colore del divisore della barra di navigazione.
  • È stato aggiunto CustomTabsIntent.Builder#setDefaultColorSchemeParams per sostituire i metodi #setNavigationBarColor, #setNavigationBarDividerColor, #setToolbarColor e #setSecondaryToolbarColor ora ritirati
  • È stato aggiunto il metodo CustomTabsClient#bindCustomTabsServicePreservePriority, che consente di connettersi a un servizio schede personalizzate senza utilizzare il flag Context.BIND_WAIVE_PRIORITY.

Versione 1.3.0-rc01

11 novembre 2020

androidx.browser:browser:1.3.0-rc01 viene rilasciato senza modifiche dal giorno 1.3.0-beta01. La versione 1.3.0-rc01 contiene questi commit.

Versione 1.3.0-beta01

28 ottobre 2020

androidx.browser:browser:1.3.0-beta01 viene ritirata. La versione 1.3.0-beta01 contiene questi commit.

Modifiche alle API

  • bindCustomTabServicePreservePriority rinominato in bindCustomTabsServicePreservePriority (I29ac1)

Correzioni di bug

  • Il controllo lint API per MissingGetterMatchingBuilder è abilitato per androidx (I4bbea, b/138602561)

Versione 1.3.0-alpha06

1° ottobre 2020

androidx.browser:browser:1.3.0-alpha06 viene ritirata. La versione 1.3.0-alpha06 contiene questi commit.

Nuove funzionalità

  • Aggiunge CustomTabsIntent#setShareState che consente allo sviluppatore di impostare lo stato di condivisione su attivato, disattivato o di lasciare la decisione al browser. (I153fe)
  • Aggiunge CustomTabsIntent.Builder#setDefaultColorSchemeParams, che deve essere utilizzato al posto dei metodi #setNavigationBarColor, #setNavigationBarDividerColor, #setToolbarColor e #setSecondaryToolbarColor ora ritirati.(I09012)

Modifiche alle API

  • Il controllo lint dell'API per StaticFinalBuilder è abilitato per androidx (I2b11b, b/138602561)
  • Aggiunge CustomTabsService#KEY_SUCCESS e TrustedWebActivityService#KEY_SUCCESS che possono essere utilizzati per indicare che extraCommand è riuscito. (I6f7b5)

Versione 1.3.0-alpha05

5 agosto 2020

androidx.browser:browser:1.3.0-alpha05 viene ritirata. La versione 1.3.0-alpha05 contiene questi commit.

Nuove funzionalità

  • Consente di impostare l'orientamento delle Trusted Web Activity avviate.
  • Consente di impostare il colore del divisore della barra di navigazione per le attività web attendibili e le schede personalizzate.

Modifiche alle API

  • È stato aggiunto un metodo setScreenOrientation in TrustedWebActivityIntentBuilder.
  • Aggiunta di un @IntDef per ScreenOrientation.LockType per rappresentare un tipo di serratura (I802d2)
  • Aggiunto il metodo setNavigationBarDividerColor a TrustedWebActivityIntentBuilder e CustomTabColorSchemeParams. (Ia04dd)
    • Aggiunti @IntDef ai metodi TrustedWebActivityIntentBuilder che utilizzano una combinazione di colori.

Versione 1.3.0-alpha04

24 giugno 2020

androidx.browser:browser:1.3.0-alpha04 viene ritirata. La versione 1.3.0-alpha04 contiene questi commit.

Nuove funzionalità

  • È stato aggiunto il metodo CustomTabsClient#bindCustomTabServicePreservePriority, che consente di connettersi a un servizio schede personalizzate senza utilizzare il flag Context.BIND_WAIVE_PRIORITY.

Versione 1.3.0-alpha03

10 giugno 2020

androidx.browser:browser:1.3.0-alpha03 viene ritirata. La versione 1.3.0-alpha03 contiene questi commit.

Nuove funzionalità

  • È stata aggiunta l'interfaccia TrustedWebActivityCallback che può essere utilizzata da un client Trusted Web Activity per restituire i dati al browser. (I64dbb)

Modifiche alle API

  • Ora TrustedWebActivityServiceConnection.extraCommand accetta anche un parametro @Nullable TrustedWebActivityCallback. Il parametro bundle ora è contrassegnato come @NonNull anziché @Nullable. (I64dbb)
  • Il metodo TrustedWebActivityServiceConnection.extraCommand è stato rinominato in sendExtraCommand (Id29a8)
  • CustomTabsIntent.Builder#addDefaultShareMenuItem() è stato ritirato a favore del nuovo #setDefaultShareMenuItemEnabled(boolean) e CustomTabsIntent.Builder#enableUrlBarHiding() è stato ritirato a favore del nuovo #setUrlBarHidingEnabled(boolean). (Iad702)

Versione 1.3.0-alpha01

8 gennaio 2020

androidx.browser:browser:1.3.0-alpha01 viene ritirata. La versione 1.3.0-alpha01 contiene questi commit.

Nuove funzionalità

  • I comandi in formato libero possono essere passati da un browser a un client Trusted Web Activity chiamando TrustedWebActivityServiceConnection#extraCommand. Il cliente può gestirli in TrustedWebActivityService#onExtraCommand.

Modifiche all'API

  • L'URL fornito a CustomTabsSession#mayLauncherUrl e ricevuto in CustomTabsService#mayLaunchUrl è stato reso @Nullable.

Versione 1.2.0

Versione 1.2.0

18 dicembre 2019

androidx.browser:browser:1.2.0 viene rilasciato senza modifiche dal giorno 1.2.0-rc01. La versione 1.2.0 contiene questi commit.

Modifiche principali dalla versione 1.0.0

  • Attività web attendibili
    • Il supporto per le attività web attendibili è ora stabile.
    • TrustedWebActivityIntentBuilder può essere utilizzato per personalizzare e creare un TrustedWebActivityIntent, per avviare un'attività web attendibile.
    • Il TrustedWebActivityService può essere incluso o esteso per consentire ai client di visualizzare le notifiche push web inviate dal browser.
    • Il TrustedWebActivityServiceConnectionPool può essere utilizzato dai browser per connettersi ai TrustedWebActivityService nei client. Un TrustedWebActivityServiceConnection rappresenta una connessione di questo tipo.
    • Le attività web attendibili possono essere avviate fornendo informazioni a una destinazione di condivisione web.
  • Tema scuro
    • Gli sviluppatori possono fornire (tramite CustomTabColorSchemeParams) diversi colori del tema da utilizzare quando il dispositivo è in modalità Chiaro o Buio.
    • Gli sviluppatori possono richiedere che il browser stesso sia in modalità Luce o Buio.
  • Ripresa delle sessioni
    • CustomTabsSession possono essere creati con un ID, consentendo di unire i successivi lanci di schede personalizzate dallo stesso client e ID.
  • Il colore della barra di navigazione può essere specificato per le schede personalizzate.
  • Le classi correlate alle Azioni browser sono contrassegnate come obsolete a causa dell'utilizzo incredibilmente basso della funzionalità e verranno rimosse in una versione futura della libreria.

Versione 1.2.0-rc01

4 dicembre 2019

androidx.browser:browser:1.2.0-rc01 viene ritirata. La versione 1.2.0-rc01 contiene questi commit.

Correzioni di bug

  • È stata corretta la formattazione Javadoc per gli esempi di codice.

Versione 1.2.0-beta01

20 novembre 2019

androidx.browser:browser:1.2.0-beta01 viene rilasciato senza modifiche dal giorno 1.2.0-alpha09. La versione 1.2.0-beta01 contiene questi commit.

Versione 1.2.0-alpha09

23 ottobre 2019

androidx.browser:browser:1.2.0-alpha09 viene ritirata. La versione 1.2.0-alpha09 contiene questi commit.

Nuove funzionalità

  • La classe Token può essere utilizzata per rappresentare l'identità di un pacchetto e contiene sia il nome del pacchetto sia la firma del certificato di firma del pacchetto.
    • È progettato per essere serializzato in un byte[] per la persistenza.
    • Viene utilizzato da TrustedWebActivityService per determinare a quale provider TWA è consentito connettersi.
    • Viene utilizzato da TrustedWebActivityConnectionPool dal fornitore di TWA per determinare a quali pacchetti è valido connettersi.
  • L'interfaccia TokenStore viene ora utilizzata da TrustedWebActivityService per determinare a quale app è consentito connettersi.
    • È il cliente a chiamare TokenStore#store, TrustedWebActivityService carica solo i token.
  • TrustedWebActivityServiceConnectionPool (in precedenza TrustedWebActivityServiceConnectionManager) non memorizza più l'insieme di pacchetti verificati:
    • registerClient e getVerifiedPackages sono stati rimossi.
    • La raccolta di pacchetti verificati viene ora fornita manualmente a execute (in precedenza connect) e serviceExistsForScope.
  • TrustedWebActivityService delega alla classe di override l'archiviazione del fornitore verificato.
    • setVerifiedProvider è stato rimosso.
    • Il client deve implementare getTokenStore, che restituisce un TokenStore che può essere utilizzato per archiviare e recuperare un Token.

Modifiche all'API

  • La classe TrustedWebActivityServiceConnectionManager:
    • Ora si chiama TrustedWebActivityServiceConnectionPool.
    • Ora è definitivo.
    • Viene costruito dal metodo statico create anziché da un costruttore pubblico.
  • La classe TrustedWebActivityService:
    • Contiene annotazioni dei thread sui metodi di cui è possibile eseguire l'override.
  • La classe TrustedWebActivityServiceWrapper:
    • Ora si chiama TrustedWebActivityServiceConnection.
    • Ora è definitivo.
    • Ora genera RemoteException non elaborate anziché eseguirne il wrapping in RuntimeException.
  • La classificazione ShareTarget#FileFormField è ora definitiva.
  • Il metodo TrustedWebUtils#splashScreensAreSupported è stato rinominato in areSplashScreensSupported.
  • Il metodo TrustedWebActivityIntentBuilder#getUrl è stato rinominato in TrustedWebActivityIntentBuilder#getUri.
  • I campi statici SplashScreenParamKey sono stati preceduti dal prefisso KEY_.

Versione 1.2.0-alpha08

18 settembre 2019

androidx.browser:browser:1.2.0-alpha08 viene ritirata. La versione 1.2.0-alpha08 contiene questi commit.

Nuove funzionalità

  • Sono state introdotte nuove API Share Target per le attività web attendibili. Le app che utilizzano Trusted Web Activities ora possono inviare dati al proprio Web Share Target, definito dal protocollo https://wicg.github.io/web-share-target/level-2/ (aosp/I47b93, aosp/I0ec3e)

Modifiche all'API

  • Aggiunta del callback extraCallbackWithResult a ICustomTabsCallback (aosp/Ic2cc2)
  • Alcuni parametri del metodo CustomTabsSession sono stati contrassegnati come Nullable o NonNull (aosp/Iec460)
  • TrustedWebActivityIntentBuilder ora crea un TrustedWebActivityIntent anziché un intent non elaborato (aosp/I03fb6)

Correzioni di bug

  • CustomTabsClient ora utilizza requestPostMessageChannel legacy, se necessario (aosp/Ibb324)
  • Correzione CustomTabsSessionToken#equals (aosp/I7f249)
  • CustomTabsClient ora utilizza newSession legacy, se possibile (aosp/Ie27dc)

Contributo esterno

Versione 1.2.0-alpha07

7 agosto 2019

androidx.browser:browser:1.2.0-alpha07 viene ritirata. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

  • Tema scuro

    • Gli sviluppatori possono fornire i colori del tema da utilizzare quando il dispositivo è in modalità Buio.
    • Gli sviluppatori possono anche ignorare la modalità scura o chiara del browser avviato.
    • Il colore della barra di navigazione può essere specificato per le schede personalizzate.
  • Attività web attendibili

    • L'TrustedWebActivityBuilder può essere utilizzato per creare e lanciare facilmente le attività web attendibili.
    • TrustedWebActivityService e le classi correlate possono essere utilizzate per comunicare con il fornitore, accettando le notifiche push web per il sito web collegato e visualizzandole dall'app client. Questa parte dell'API è soggetta a modifiche.
  • ID sessione scheda personalizzata

    • Ora è possibile creare sessioni di Schede personalizzate con ID, consentendo l'unione di due sessioni avviate dalla stessa applicazione con lo stesso ID.

Modifiche all'API

  • Le classi e i metodi correlati alle azioni del browser sono stati contrassegnati come ritirati. Purtroppo, nonostante le grandi aspettative, quasi nessuno ha utilizzato la funzionalità e solo un browser ha finito per supportarla. Stiamo ritirando questa funzionalità per mantenere semplici il codice e l'API.

Versione 1.0.0

Versione 1.0.0

21 settembre 2018

browser-1.0.0 è stato rilasciato.