Webkit

Utilizza le API WebView moderne su Android 5 e versioni successive.
Ultimo aggiornamento Release stabile Candidato per la release Versione beta Versione alpha
11 dicembre 2024 1.9.0 - - 1.13.0-alpha02

Dichiarazione delle dipendenze

Per aggiungere una dipendenza da Webkit, 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 {
    implementation "androidx.webkit:webkit:1.9.0"
}

Kotlin

dependencies {
    implementation("androidx.webkit:webkit:1.9.0")
}

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

Versione 1.13.0-alpha02

11 dicembre 2024

androidx.webkit:webkit:1.13.0-alpha02 viene rilasciato. La versione 1.13.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Aggiungi l'API di tagging delle socket a WebView per la contabilizzazione del traffico di rete di WebView utilizzando NetworkStatsManager/TrafficStats. Questa funzionalità sarà disponibile solo a partire da WebView M133. (Ica441, b/374932688)

Modifiche all'API

  • Aggiorna l'API Prefetch rinominando PrefetchParameter in SpeculativeLoadingParamaters, introducendo il nuovo PrefetchNetworkException, sostituendo PrefetchOperationCallback con OutcomeReceiverCompat e aggiornando il Javadoc. (If5072)
  • Visualizza le informazioni di diagnostica dall'API di avvio asincrono di WebView.
  • Fornire un'opzione per le app per attivare solo l'inizializzazione che non blocca il thread dell'interfaccia utente. (I9bf2b)

Correzioni di bug

  • Questa libreria ora utilizza le annotazioni di nullità JSpecify, che sono di tipo di utilizzo. Gli sviluppatori Kotlin devono utilizzare i seguenti argomenti del compilatore per applicare l'utilizzo corretto: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (I0e4c5, b/326456246)

Versione 1.13.0-alpha01

13 novembre 2024

androidx.webkit:webkit:1.13.0-alpha01 viene rilasciato. La versione 1.13.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiungi l'API di avvio asincrona WebView sperimentale. (I94b8a)
  • Precaricamento degli URL in Profilo: è stata introdotta una nuova API in Profilo per consentire agli sviluppatori di attivare il precaricamento degli URL. Cancellazione del prefetch: è stata aggiunta un'API per cancellare i prefetch in corso. (I42c5c)

Modifiche all'API

  • Rifiuta WebView.startSafeBrowsing. (If5626)

Versione 1.12

Versione 1.12.1

2 ottobre 2024

androidx.webkit:webkit:1.12.1 viene rilasciato. La versione 1.12.1 contiene questi commit.

Correzioni di bug

  • Risolvere il problema che impediva la disponibilità delle API 1.12.0 nella release.

Versione 1.12.0

18 settembre 2024

androidx.webkit:webkit:1.12.0 viene rilasciato. La versione 1.12.0 contiene questi commit.

Modifiche importanti dalla versione 1.11.0

  • Aggiungi una nuova API a WebSettingsCompat per attivare/disattivare BackForwardCache per questo WebSettings. Questa API è sperimentale e può essere modificata in futuro. (aosp/3111705)
  • Aggiungi una nuova API a WebSettingsCompat per controllare il comportamento di caricamento speculativo per questo WebSettings. Al momento è disponibile solo la funzionalità Prerender. Questa API è sperimentale e può essere modificata in futuro. (I13962)
  • È stata aggiunta una nuova API per attivare l'autenticazione web in WebView. Gli sviluppatori possono attivare/disattivare le chiamate WebAuthn in un WebView per le loro app utilizzando WebSettingsCompat#setWebAuthenticationSupport. (I8187f)

Versione 1.12.0-rc01

4 settembre 2024

androidx.webkit:webkit:1.12.0-rc01 viene rilasciato. Questa release non contiene modifiche rispetto alla release 1.12.0-beta01.

Versione 1.12.0-beta01

21 agosto 2024

androidx.webkit:webkit:1.12.0-beta01 viene rilasciato. La versione 1.12.0-beta01 contiene questi commit.

Correzioni di bug

  • È 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. (Ia60e0, b/345472586)

Versione 1.12.0-alpha02

12 giugno 2024

androidx.webkit:webkit:1.12.0-alpha02 viene rilasciato. La versione 1.12.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Aggiungi una nuova API a WebSettingsCompat per attivare/disattivare BackForwardCache. Questa API è sperimentale e può essere modificata in futuro. (I64a38)
  • Aggiungi una nuova API a WebSettingsCompat per controllare il comportamento di caricamento speculativo per queste impostazioni web. Al momento è disponibile solo la funzionalità Prerender. Questa API è sperimentale e può essere modificata in futuro. (I13962)

Modifiche all'API

  • Alcuni metodi ora sono documentati con @UiThread, ove appropriato. (I6c7e0), (I44541)
  • I metodi a prova di thread sono ora documentati con @AnyThread. (I70189)
  • Aumento di minSdkVersion da 19 a 21. (Id7a43)

Versione 1.12.0-alpha01

17 aprile 2024

androidx.webkit:webkit:1.12.0-alpha01 viene rilasciato. La versione 1.12.0-alpha01 contiene questi commit.

Modifiche all'API

  • È stata aggiunta una nuova API per abilitare l'autenticazione web in WebView. Developers, che può attivare/disattivare le chiamate WebAuthn in un WebView per le proprie app che utilizzano WebSettingsCompat#setWebAuthenticationSupport. (I8187f)

Versione 1.11

Versione 1.11.0

1° maggio 2024

androidx.webkit:webkit:1.11.0 viene rilasciato. La versione 1.11.0 contiene questi commit.

Modifiche importanti dalla versione 1.10.0

  • Consenti alle app di controllare la riproduzione audio in WebView tramite le nuove API setAudioMuted e isAudioMuted, che sono analoghe al silenziamento di una scheda in Chrome.
  • È stato introdotto URLUtilCompat, che supporta l'analisi delle intestazioni Content-Disposition che utilizzano l'attributo del valore codificato filename* come definito in RFC 6266. L'API di compatibilità espone anche direttamente un metodo per analizzare l'intestazione Content-Disposition quando non è desiderato un nome file suggerito in base all'URL e al tipo MIME.

Versione 1.11.0-rc01

3 aprile 2024

androidx.webkit:webkit:1.11.0-rc01 viene rilasciato. Questa release non contiene modifiche rispetto alla release 1.11.0-beta01.

Versione 1.11.0-beta01

20 marzo 2024

androidx.webkit:webkit:1.11.0-beta01 viene rilasciato senza modifiche significative. La versione 1.11.0-beta01 contiene questi commit.

Versione 1.11.0-alpha02

21 febbraio 2024

androidx.webkit:webkit:1.11.0-alpha02 viene rilasciato. La versione 1.11.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Aggiungi i metodi setAudioMuted e isAudioMuted per disattivare (e riattivare) l'audio di WebViews. Questo metodo ti consente di impedire a un WebView di riprodurre l'audio. (Ie7a33)

Modifiche all'API

  • URLUtilCompat è stato reso definitivo in quanto non deve essere sottoclassificato. (I49ec1)

Versione 1.11.0-alpha01

7 febbraio 2024

androidx.webkit:webkit:1.11.0-alpha01 viene rilasciato. La versione 1.11.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiungi la compatibilità per URLUtil.guessFileName. La versione di compatibilità in URLUtilCompat supporta l'analisi delle intestazioni Content-Disposition che utilizzano l'attributo valore codificato filename* come definito in RFC 6266. L'API di compatibilità espone anche direttamente un metodo per analizzare l'intestazione Content-Disposition quando non è desiderato un nome file suggerito in base all'URL e al tipo MIME. (If6ae7, b/309927164)

Versione 1.10

Versione 1.10.0

24 gennaio 2024

androidx.webkit:webkit:1.10.0 viene rilasciato. La versione 1.10.0 contiene questi commit.

Modifiche importanti dalla versione 1.9.0

  • È stata aggiunta una nuova API a WebSettingsCompat per controllare il comportamento sperimentale dell'API Android WebView Media Integrity disattivando completamente l'API o limitando la condivisione dell'identità dell'applicazione nella risposta dell'API. Questa opzione può essere attivata e disattivata per tutte le origini e per ogni origine.

Versione 1.10.0-rc01

10 gennaio 2024

androidx.webkit:webkit:1.10.0-rc01 viene rilasciato. Questa release non contiene modifiche rispetto alla release 1.10.0-beta01.

Versione 1.10.0-beta01

13 dicembre 2023

androidx.webkit:webkit:1.10.0-beta01 viene rilasciato. La versione 1.10.0-beta01 contiene questi commit.

  • Nessuna modifica funzionale da 1.10.0-alpha01.

Versione 1.10.0-alpha01

29 novembre 2023

androidx.webkit:webkit:1.10.0-alpha01 viene rilasciato. La versione 1.10.0-alpha01 contiene questi commit.

Nuove funzionalità

  • È stata aggiunta una nuova API a WebSettingsCompat per controllare il comportamento sperimentale dell'API Android WebView Media Integrity disattivando completamente l'API o limitando la condivisione dell'identità dell'applicazione nella risposta dell'API. Questa opzione può essere attivata e disattivata per tutte le origini e per ogni origine.

Versione 1.9

Versione 1.9.0

29 novembre 2023

androidx.webkit:webkit:1.9.0 viene rilasciato. La versione 1.9.0 contiene questi commit.

Modifiche importanti dalla versione 1.8.0

  • È stata aggiunta una nuova API multiprofilo per le WebView.
  • È stata aggiunta un'API per iniettare ed eseguire JavaScript prima del caricamento della pagina.
    • L'API WebViewCompat#addDocumentStartJavascript consente alle app di iniettare script in un WebView che verranno eseguiti prima di qualsiasi script della pagina. L'API consente all'app di specificare un elenco di origini di destinazione per l'attivazione dello script, garantendo che venga eseguito solo nelle pagine previste. A differenza di WebView#evaluateJavascript, questa API consente l'esecuzione degli script negli iframe incorporati al momento del caricamento. Le app possono utilizzare questa nuova API in combinazione con WebViewCompat#addWebMessageListener per configurare in modo affidabile la comunicazione bidirezionale con JavaScript nella pagina.
  • Sono state aggiunte API per modificare il modo in cui vengono registrati gli eventi Attribution Reporting di Privacy Sandbox.
    • Abbiamo introdotto una nuova API WebSettingsCompat#setAttributionRegistrationBehavior che consente agli sviluppatori di configurare se le origini e gli attivatori dell'attribuzione devono essere registrati come provenienti dall'app stessa o dai contenuti web in WebView. Questo metodo può essere utilizzato anche per disattivare i report sull'attribuzione in WebView. Inoltre, abbiamo aggiunto una nuova API WebSettingsCompat#getAttributionRegistrationBehavior per ottenere il comportamento corrente.
    • Per saperne di più, consulta la documentazione di Privacy Sandbox.
  • Sono state aggiunte API per eseguire l'override dei metadati dello user agent per i suggerimenti client.
    • Abbiamo introdotto una nuova API, WebSettingsCompat#setUserAgentMetadata, per eseguire l'override dei metadati dell'user-agent per WebView utilizzati per compilare gli indizi client dell'user-agent e abbiamo aggiunto un'altra nuova API, WebSettingsCompat#getUserAgentMetadata, per ottenere le sostituzioni dell'user-agent correnti. Consigliamo alle app di utilizzare la nuova API per impostare i valori di sostituzione corretti ogni volta che l'app modifica la stringa dell'agente utente predefinita utilizzando WebSettings.setUserAgentString per garantire che in tutte le situazioni vengano utilizzati i valori corretti.

Versione 1.9.0-rc01

15 novembre 2023

androidx.webkit:webkit:1.9.0-rc01 viene rilasciato. Questa release non contiene modifiche rispetto alla release 1.9.0-beta01.

Versione 1.9.0-beta01

1° novembre 2023

androidx.webkit:webkit:1.9.0-beta01 viene rilasciato. La versione 1.9.0-beta01 contiene questi commit.

Modifiche all'API

  • Risolvere il problema di nullità dell'API dei metadati dell'agente utente. Aggiorniamo la classe BrandVersion per utilizzare il pattern di creazione, rendendo coerente la nullabilità dei getter e dei setters della classe UserAgentMetadata. (Ibf195)
  • Annotazione di ProfileStore, WebViewCompat#setProfile e WebViewCompat.getProfile con @UiThread. (I499b2)

Versione 1.9.0-alpha01

18 ottobre 2023

androidx.webkit:webkit:1.9.0-alpha01 viene rilasciato. La versione 1.9.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto l'API multiprofilo che ti consente di avere sessioni di navigazione separate tra WebViews, ogni profilo ha i propri dati (ad es. cookie). Puoi creare profili, assegnarli a istanze WebView e recuperarli in un secondo momento per qualsiasi accesso ai dati. Esiste una classe singleton ProfileStore che ti aiuta a gestire i profili tramite creazione o eliminazione con le API getOrCreateProfile, getProfile, getAllProfileNames e deleteProfile. La classe Profile avrà API diverse da utilizzare per recuperare i dati associati a questo profilo, ad esempio il nome, GeoLocationPermissions, ServiceWorkerController, CookieManager e WebStorage. Per impostazione predefinita, ogni WebView viene eseguito con il profilo predefinito, ma puoi modificarlo utilizzando WebViewCompat#setProfile. A questo proposito, il profilo di un WebView può essere recuperato utilizzando WebViewCompat#getProfile. (I32d22)
  • Aggiungi API per modificare il modo in cui vengono registrati gli eventi di Attribution Reporting. Abbiamo introdotto una nuova API WebSettingsCompat#setAttributionRegistrationBehavior che consente agli sviluppatori di configurare se le origini e gli attivatori devono essere registrati come provenienti dall'app stessa o dai contenuti web in WebView. Questo metodo può essere utilizzato anche per disattivare i report sull'attribuzione in WebView. Inoltre, abbiamo aggiunto una nuova API WebSettingsCompat#getAttributionRegistrationBehavior per ottenere il comportamento corrente. Per ulteriori informazioni, consulta la documentazione di Privacy Sandbox. (I661f2)
  • Aggiungi API per eseguire l'override dei metadati dello user agent. Abbiamo introdotto una nuova API WebSettingsCompat#setUserAgentMetadata per eseguire l'override dei metadati dello user agent per WebView, che viene utilizzata per compilare gli indizi client dello user agent, e abbiamo aggiunto un'altra nuova API WebSettingsCompat#getUserAgentMetadata per ottenere le sostituzioni dello user agent correnti. Consigliamo alle app di utilizzare la nuova API per impostare i valori di override corretti anziché fare affidamento sulla modifica dell'user-agent. (I74500)
  • Aggiungi un'API per iniettare JavaScript da eseguire durante il caricamento della pagina. L'API WebViewCompat.addDocumentStartJavascript consente alle app di iniettare script in un WebView che verranno eseguiti prima di qualsiasi script di pagina. L'API consente all'app di specificare un elenco di origini di destinazione per l'attivazione dello script, garantendo che venga eseguito solo nelle pagine previste. A differenza di WebView.evaluateJavascript, questa API consente l'esecuzione di script negli iframe incorporati al momento del caricamento. (Ide063)

Versione 1.8

Versione 1.8.0

6 settembre 2023

androidx.webkit:webkit:1.8.0 viene rilasciato. La versione 1.8.0 contiene questi commit.

Modifiche importanti dalla versione 1.7.0

Versione 1.8.0-rc01

9 agosto 2023

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

Versione 1.8.0-beta01

26 luglio 2023

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

Versione 1.8.0-alpha01

7 giugno 2023

androidx.webkit:webkit:1.8.0-alpha01 viene rilasciato. La versione 1.8.0-alpha01 contiene questi commit.

Modifiche all'API

  • Consulta la sezione Contributo esterno.

Contributo esterno

  • Aggiunta del supporto per il passaggio di ArrayBuffer tramite WebMessagePortCompat#postMessage, JsReplyProxy#postMessage e WebViewCompat#postWebMessage, la ricezione di ArrayBuffer da JavaScript tramite WebMessagePortCompat e WebMessageListener e la ricezione di ArrayBuffer trasferibile da JavaScript tramite WebMessagePortCompat. Tieni presente che questa API sarà disponibile solo a partire dalla versione 116 di WebView. (Ie7567, b/251152171)

Versione 1.7

Versione 1.7.0

24 maggio 2023

androidx.webkit:webkit:1.7.0 viene rilasciato. La versione 1.7.0 contiene questi commit.

Modifiche importanti dalla versione 1.6.0

  • Abbiamo aggiunto il supporto per il trascinamento delle immagini in WebView. Puoi consentire agli utenti di trascinare le immagini fuori da WebView aggiungendo il nuovo DropDataContentProvider al file manifest della tua app, come descritto nella documentazione della classe.
  • Abbiamo aggiunto l'API ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) che può essere utilizzata per impostare le directory di base che WebView utilizzerà per la procedura corrente. Come per tutti i metodi di ProcessGlobalConfig, questo metodo deve essere chiamato prima dell'inizializzazione della prima istanza di WebView. Questo metodo viene aggiunto per fornire al framework Android la possibilità di modificare le impostazioni di WebView. Per le applicazioni generiche, l'utilizzo di questo metodo non è consigliato.

Versione 1.7.0-rc01

10 maggio 2023

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

Versione 1.7.0-beta01

5 aprile 2023

androidx.webkit:webkit:1.7.0-beta01 viene rilasciato. La versione 1.7.0-beta01 contiene questi commit.

Modifiche all'API

  • Modifica minore al flag della funzionalità e al nome del metodo e setDirectoryBasePaths() accetta File anziché Stringa (Ib0d0a)

Versione 1.7.0-alpha03

8 marzo 2023

androidx.webkit:webkit:1.7.0-alpha03 viene rilasciato. La versione 1.7.0-alpha03 contiene questi commit.

Modifiche all'API

  • Aggiungi l'API ProcessGlobalConfig#setDirectoryBasePath(String, String) che può essere utilizzata per impostare le directory di base che WebView utilizzerà per la procedura corrente. (Ibd1a1, b/250553687)

Correzioni di bug

  • Correggere la regola ProGuard non valida che causa errori di compilazione quando si utilizza DexGuard (Ia65c2, b/270034835)

Versione 1.7.0-alpha02

8 febbraio 2023

androidx.webkit:webkit:1.7.0-alpha02 viene rilasciato. La versione 1.7.0-alpha02 contiene questi commit.

Correzioni di bug

  • Bug della documentazione per DropDataContentProvider.

Versione 1.7.0-alpha01

25 gennaio 2023

androidx.webkit:webkit:1.7.0-alpha01 viene rilasciato. La versione 1.7.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Stiamo aggiungendo il supporto per il trascinamento delle immagini in WebView. Puoi consentire agli utenti di trascinare le immagini dall'WebView aggiungendo il nuovo DropDataContentProvider al file manifest della tua app. (05a1a6)

Versione 1.6

Versione 1.6.1

22 marzo 2023

androidx.webkit:webkit:1.6.1 viene rilasciato. La versione 1.6.1 contiene questi commit.

Correzioni di bug

  • Correggere l'errore di analisi di ProGuard (Ia65c2)

Versione 1.6.0

25 gennaio 2023

androidx.webkit:webkit:1.6.0 viene rilasciato. La versione 1.6.0 contiene questi commit.

Modifiche importanti dalla versione 1.5.0

  • È stata aggiunta una nuova API ProcessGlobalConfig per consentire alle app di fornire impostazioni di configurazione che devono essere impostate prima del caricamento di WebView, ad esempio il suffisso della directory dei dati di WebView. La configurazione deve essere configurata e applicata il prima possibile durante l'avvio dell'applicazione, per assicurarsi che ciò avvenga prima che qualsiasi altro thread possa chiamare un metodo che carichi WebView nel processo.
  • È stata aggiunta una nuova API CookieManagerCompat per espandere android.webkit.CookieManager con un nuovo metodo getCookieInfo, che recupera tutti gli attributi per tutti i cookie impostati su un URL specifico. È diverso dall'API getCookie esistente in CookieManager, che restituisce solo gli attributi name e value dei cookie.
  • WebSettingsCompat dispone di nuovi metodi per attivare/disattivare l'effetto di EnterpriseAuthenticationAppLinkPolicy se impostato dall'amministratore in WebView e per ottenere l'impostazione corrente. Questa funzionalità consente a WebView di aprire un'app di autenticazione anziché l'URL di autenticazione. Questa funzionalità non ha effetto sui dispositivi non gestiti da un criterio aziendale.
  • Aggiunta di una nuova API a WebSettingsCompat per consentire alle applicazioni di inviare esplicitamente il nome del pacchetto dell'app nell'intestazione X-Requested-With alle origini incluse nella lista consentita. L'intestazione è stata tradizionalmente inviata a ogni richiesta da WebView.

Versione 1.6.0-rc01

11 gennaio 2023

androidx.webkit:webkit:1.6.0-rc01 viene rilasciato. La versione 1.6.0-rc01 contiene questi commit.

Correzioni di bug

  • È stato corretto il problema NullPointerException in WebViewFeature.isStartupFeatureSupported(Context, String) quando si esegue su SDK < L. (Ic7292)

Versione 1.6.0-beta01

7 dicembre 2022

androidx.webkit:webkit:1.6.0-beta01 viene rilasciato. La versione 1.6.0-beta01 contiene questi commit.

Modifiche all'API

  • ProcessGlobalConfig è stato modificato in modo da utilizzare un normale costruttore e un metodo di applicazione statico. Il metodo apply deve essere chiamato una sola volta per processo, il prima possibile, e verrà generato un errore IllegalStateException se viene chiamato più volte. Gli oggetti ProcessGlobalConfig non hanno più limitazioni sul numero di volte in cui possono essere chiamati i setter. (I456c3)

Versione 1.6.0-alpha03

9 novembre 2022

androidx.webkit:webkit:1.6.0-alpha03 viene rilasciato. La versione 1.6.0-alpha03 contiene questi commit.

Nuove funzionalità

  • Aggiungi la classe ProcessGlobalConfig che consente agli utenti di impostare la configurazione globale del processo prima del caricamento WebView. WebView ha alcuni parametri di configurazione a livello di processo che non possono essere modificati una volta caricato WebView (ad es. la directory dei dati di WebView). Questa classe consente alle app di impostare questi parametri. La configurazione deve essere configurata e applicata il prima possibile durante l'avvio dell'applicazione, per assicurarsi che ciò avvenga prima che qualsiasi altro thread possa chiamare un metodo che carichi WebView nel processo. (I7c0e0, b/250553687)
  • Aggiunta di una nuova API per consentire alle applicazioni di inviare esplicitamente il nome del pacchetto dell'app nell'intestazione X-Requested-With alle origini inserite nella lista consentita. L'intestazione è stata tradizionalmente inviata a ogni richiesta da WebView. (I0adfe, b/226552535)

Modifiche all'API

  • L'API WebSettingsCompat#setAlgorithmicDarkeningAllowed è supportata su tutte le versioni di Android a partire dalla versione 105 di WebView. Le versioni precedenti di WebView supportavano l'API solo su Android Q e versioni successive. Di conseguenza, questa API non è più contrassegnata come @RequiresApi(Build.VERSION_CODES.Q). (I3ac1d)

Versione 1.6.0-alpha02

24 ottobre 2022

androidx.webkit:webkit:1.6.0-alpha02 viene rilasciato. La versione 1.6.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Aggiunge una nuova classe CookieManagerCompat e un'API getCookieInfo che recupera tutti gli attributi di tutti i cookie impostati su un URL specifico. Questo è diverso dall'API getCookie esistente in CookieManager, che restituisce solo gli attributi name e value dei cookie. (I07365, b/242161756)

Versione 1.6.0-alpha01

24 agosto 2022

androidx.webkit:webkit:1.6.0-alpha01 viene rilasciato. La versione 1.6.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Sono state aggiunte API in WebSettingsCompat per attivare/disattivare l'effetto di EnterpriseAuthenticationAppLinkPolicy se impostato dall'amministratore in WebView. Questa funzionalità consente a WebView di aprire un'app di autenticazione anziché l'URL di autenticazione. Questa funzionalità non ha effetto sui dispositivi non gestiti da un criterio aziendale.

Versione 1.5.0

Versione 1.5.0

24 agosto 2022

androidx.webkit:webkit:1.5.0 viene rilasciato. La versione 1.5.0 contiene questi commit.

Modifiche importanti dalla versione 1.4.0

  • Una nuova API setAlgorithmicDarkeningAllowed su WebSettingsCompat sostituisce le vecchie API setForceDark e setForceDarkStrategy. Le app che hanno come target SDK 33 e versioni successive (T) devono utilizzare la nuova API, poiché la vecchia API non avrà più alcun effetto su queste app.
  • Ora è possibile impostare una lista consentita di URL che utilizzano il proxy configurato tramite ProxyCofig.Builder impostando setReverseBypassEnabled su true. In questo caso, tutti gli altri URL aggireranno il proxy configurato.

Versione 1.5.0-rc01

10 agosto 2022

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

Versione 1.5.0-beta01

29 giugno 2022

androidx.webkit:webkit:1.5.0-beta01 viene rilasciato. La versione 1.5.0-beta01 contiene questi commit.

Modifiche all'API

  • Le API relative all'oscuramento algoritmico sono ora annotate per richiedere il livello API Q. L'API non avrà alcun effetto sui livelli API precedenti a Q, poiché il tema scuro non è un'opzione su questi dispositivi. (I0905e)

Versione 1.5.0-alpha01

18 maggio 2022

androidx.webkit:webkit:1.5.0-alpha01 viene rilasciato. La versione 1.5.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiungi un nuovo metodo getVariationsHeader() su WebViewCompat per ottenere il valore dell'intestazione X-Client-Data inviato da WebView. Il valore restituito sarà un protobuf ClientVariations con codifica base64.
  • Aggiungi le API su WebSettingsCompat per consentire/impedire l'oscuramento algoritmico per le app con targetSdk >= 33. (I29597)

Modifiche all'API

  • Aggiungi un nuovo metodo in ProxyCofig.Builder per impostare il bypass inverso. Se imposti il valore di bypass inverso su true, solo gli URL nell'elenco di bypass utilizzeranno le impostazioni del proxy. (I9eaa2, b/168728599)

Correzioni di bug

  • È stato corretto un errore ortografico nella documentazione del tema scuro. (I36ebf, b/194343633)
  • È stato corretto un bug per cui i metodi WebViewAssetLoader.Builder erano involontariamente dipendenti dall'ordine. (If420d, b/182196765)

Versione 1.4.0

Versione 1.4.0

16 dicembre 2020

androidx.webkit:webkit:1.4.0 viene rilasciato. La versione 1.4.0 contiene questi commit.

Modifiche principali dalla versione 1.3.0

  • È stata aggiunta una nuova API setSafeBrowsingAllowlist() per sostituire setSafeBrowsingWhitelist(). In questo modo, le app possono aggiornare il codice per evitare una terminologia non inclusiva, continuando a supportare la stessa gamma di SDK Android e versioni di WebView dell'API ritirata.
  • È stato corretto un bug in setProxyOverride che causava l'applicazione non corretta delle regole di riserva.

Versione 1.4.0-rc02

2 dicembre 2020

androidx.webkit:webkit:1.4.0-rc02 viene rilasciato. La versione 1.4.0-rc02 contiene questi commit.

Correzioni di bug

  • Corregge il problema per cui le regole di riserva non vengono applicate correttamente quando si utilizza setProxyOverride.

Versione 1.4.0-rc01

11 novembre 2020

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

Versione 1.4.0-beta01

14 ottobre 2020

androidx.webkit:webkit: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

16 settembre 2020

androidx.webkit:webkit:1.4.0-alpha01 viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.

Modifiche all'API

  • È stata aggiunta una nuova API WebViewCompat#setSafeBrowsingAllowlist() per sostituire setSafeBrowsingWhitelist(). In questo modo, le app possono aggiornare il proprio codice per evitare una terminologia non inclusiva, continuando a supportare lo stesso ambito di SDK Android e versioni di WebView dell'API deprecata. (I8d65d)

Versione 1.3.0

Versione 1.3.0

19 agosto 2020

androidx.webkit:webkit:1.3.0 viene rilasciato. La versione 1.3.0 contiene questi commit.

Modifiche principali dalla versione 1.2.0

  • L'API ForceDarkStrategy offre un maggiore controllo sull'oscuramento di WebView (oscuramento dei contenuti web/CSS rispetto all'oscuramento automatico).
  • WebMessageListener e le relative API forniscono un meccanismo semplice e sicuro per stabilire la comunicazione tra i contenuti web e l'app di incorporamento di WebView.
  • API isMultiProcessEnabled per verificare se WebView è in esecuzione in multiprocesso. Questo è possibile a partire da Android O e significa che i contenuti web vengono visualizzati in un processo di rendering in sandbox separato dal processo dell'applicazione. Questo motore di rendering in sandbox può essere condiviso con altri WebView nella stessa applicazione, ma non con altri processi dell'applicazione.

Versione 1.3.0-rc02

5 agosto 2020

androidx.webkit:webkit:1.3.0-rc02 viene rilasciato. La versione 1.3.0-rc02 contiene questi commit.

Correzioni di bug

  • In questo modo viene risolto un problema di compatibilità per cui a volte WebMessageListener si arrestava in modo anomalo durante lo sviluppo locale se l'app veniva avviata con l'esecuzione istantanea di Android Studio.

Versione 1.3.0-rc01

24 giugno 2020

androidx.webkit:webkit: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

10 giugno 2020

androidx.webkit:webkit:1.3.0-beta01 viene rilasciato. La versione 1.3.0-beta01 contiene questi commit.

Nuove funzionalità

  • API ForceDarkStrategy per controllare l'oscuramento di WebView (oscuramento dei contenuti web/CSS rispetto all'oscuramento automatico).
  • Le API WebMessageListener forniscono un meccanismo semplice e sicuro per stabilire la comunicazione tra i contenuti web e l'app di incorporamento di WebView.
  • API MultiProcessEnabled per verificare se WebView è in esecuzione in modalità multiprocesso.

Versione 1.3.0-alpha03

27 maggio 2020

androidx.webkit:webkit:1.3.0-alpha03 viene rilasciato. La versione 1.3.0-alpha03 contiene questi commit.

Modifiche all'API

  • Il metodo addWebMessageListener ora riceve un Set<String> di regole di origine consentite (in precedenza un List<String>).

Versione 1.3.0-alpha02

29 aprile 2020

androidx.webkit:webkit:1.3.0-alpha02 viene rilasciato. La versione 1.3.0-alpha02 contiene questi commit.

Nuove funzionalità

  • L'API MultiProcessEnabled per verificare se WebView è in esecuzione in modalità multi processo.

Modifiche all'API

  • A tutte le costanti della strategia dark ora viene anteposto il prefisso DARK_STRATEGY.

Versione 1.3.0-alpha01

15 aprile 2020

androidx.webkit:webkit:1.3.0-alpha01 viene rilasciato. La versione 1.3.0-alpha01 contiene questi commit.

Nuove funzionalità

  • API ForceDarkStrategy per controllare l'oscuramento di WebView (oscuramento dei contenuti web/CSS rispetto all'oscuramento automatico).
  • Le API WebMessageListener forniscono un meccanismo semplice e sicuro per stabilire la comunicazione tra i contenuti web e l'app di incorporamento di WebView.

Versione 1.2.0

Versione 1.2.0

4 marzo 2020

androidx.webkit:webkit:1.2.0 viene rilasciato. La versione 1.2.0 contiene questi commit.

Modifiche principali dalla versione 1.1.0

  • È stata aggiunta l'API ForceDark per controllare se le visualizzazioni WebView devono essere visualizzate in modalità Buio.

Versione 1.2.0-rc01

19 febbraio 2020

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

Versione 1.2.0-beta01

5 febbraio 2020

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

Versione 1.2.0-alpha01

18 dicembre 2019

androidx.webkit:webkit:1.2.0-alpha01 viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.

Nuove funzionalità

  • API ForceDark per controllare se le WebView devono essere visualizzate in modalità Buio.

Versione 1.1.0

Versione 1.1.0

7 novembre 2019

androidx.webkit:webkit:1.1.0 viene rilasciato. La versione 1.1.0 contiene questi commit.

Modifiche importanti dalla versione 1.0.0

  • API getter per integrare setWebViewClient() e setWebChromeClient().
  • API ProxyController per impostare un proxy per le richieste di rete per le WebView di un'app.
  • L'API WebViewAssetLoader semplifica il caricamento di asset, risorse e file APK dalla directory dei dati dell'app tramite l'intercettazione delle richieste. In questo modo è possibile accedere alle risorse web e locali senza disattivare CORS.
  • API TracingController per raccogliere informazioni sul monitoraggio di WebView a scopo di debug.
  • API RenderProcess per gestire i servizi di rendering WebView e rilevare quando i contenuti con comportamento indesiderato causano l'interruzione del funzionamento dei componenti di rendering WebView.
  • Sono state aggiornate le API esistenti per includere le annotazioni di nullità (@NonNull, @Nullable) e thread (@UiThread, @WorkerThread).

Versione 1.1.0-rc01

9 ottobre 2019

androidx.webkit:webkit:1.1.0-rc01 viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.

Correzioni di bug

  • È stato risolto un problema per cui setWebViewRenderProcessClient() poteva arrestarsi in modo anomalo se veniva passato un client null.

Versione 1.1.0-beta01

5 settembre 2019

androidx.webkit:webkit:1.1.0-beta01 viene rilasciato. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

  • Nuovo InternalStoragePathHandler in WebViewAssetLoader per caricare i file dalla directory dei dati dell'app.

Modifiche all'API

  • ProxyConfig#getProxyRules() ora restituisce un elenco non modificabile di istanze ProxyRule, una nuova classe per contenere un filtro schema e il relativo URL proxy.

Correzioni di bug

  • WebViewAssetLoader utilizza per impostazione predefinita un tipo MIME "text/plain" (anziché nullo) quando non riesce a indovinare il tipo MIME dal percorso del file.
  • WebViewAssetLoader non genera più un NullPointerException durante il caricamento di file con caratteri speciali nei nomi dei percorsi.

Versione 1.1.0-alpha02

7 agosto 2019

androidx.webkit:webkit:1.1.0-alpha02 viene rilasciato. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

  • WebViewAssetLoader espone l'interfaccia PathHandler per consentire alle app di creare funzionalità di gestione dei percorsi personalizzati.

Modifiche all'API

  • WebViewAssetLoader ora è una classe finale, poiché non è destinata a essere sottoclassificata.
  • Le implementazioni di WebViewAssetLoader#PathHandler sono ora pubbliche e definitive.
  • Modifiche minori ai nomi dei metodi ProxyConfig.
  • ProxyController: sono stati aggiunti i nuovi metodi addDirect() e addDirect(String) per connettersi direttamente ai server; è stata rimossa la stringa DIRECT.
  • Sono state aggiornate le API esistenti per includere le annotazioni di nullità (@NonNull, @Nullable) e thread (@UiThread, @WorkerThread).

Versione 1.1.0-alpha01

7 maggio 2019

androidx.webkit:webkit:1.1.0-alpha01 viene rilasciato. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

  • API getter per integrare setWebViewClient() e setWebChromeClient()
  • API ProxyController per impostare un proxy per le richieste di rete per le WebView di un'app.
  • API AssetLoader per semplificare il caricamento di asset e risorse APK tramite l'intercettazione delle richieste, consentendo l'accesso alle risorse web senza disattivare CORS.
  • API TracingController per raccogliere informazioni sul monitoraggio di WebView a scopo di debug.
  • API RenderProcess per gestire i servizi di rendering WebView e rilevare quando i contenuti con comportamento indesiderato causano l'interruzione del funzionamento dei componenti di rendering WebView.

Correzioni di bug

  • Correzioni minori alla formattazione della documentazione per le API esistenti.