Webkit

在 Android 5 以上版本使用新型 WebView API。
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2024 年 3 月 20 日 1.9.0 - 1.11.0-beta01 -

宣告依附元件

如要在 Webkit 上新增依附元件,您必須將 Google Maven 存放區新增至您的專案。詳情請參閱 Google 的 Maven 存放區

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

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

Kotlin

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

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件

版本 1.11

1.11.0-beta01 版本

2024 年 3 月 20 日

發布了 androidx.webkit:webkit:1.11.0-beta01,沒有任何重大變更。1.11.0-beta01 版包含這些修訂版本

1.11.0-alpha02 版本

2024 年 2 月 21 日

發布 androidx.webkit:webkit:1.11.0-alpha021.11.0-alpha02 版包含此連結所列的修訂項目。

新功能

  • 新增用於忽略 (和取消靜音) WebViewssetAudioMutedisAudioMuted 方法。這個方法可讓您防止 WebView 播放音訊。(Ie7a33)。

API 變更

  • URLUtilCompat 為最終結果,因為不應加入子類別。(I49ec1)。

1.11.0-alpha01 版本

2024 年 2 月 7 日

發布 androidx.webkit:webkit:1.11.0-alpha011.11.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • 新增 URLUtil.guessFileName 的相容性。URLUtilCompat 中的相容性版本支援剖析 Content-Disposition 標頭 (這些標頭使用 RFC 6266 中定義的 filename* 編碼值屬性)。相容性 API 也會直接公開剖析 Content-Disposition 標頭的方法,以不需要根據網址和 MIME 類型建議的檔案名稱。(If6ae7b/309927164)

版本 1.10

1.10.0 版本

2024 年 1 月 24 日

發布 androidx.webkit:webkit:1.10.01.10.0 版包含此連結所列的修訂項目。

自 1.9.0 版以來的重要變更

  • 在 WebSettingsCompat 中新增新 API,以便完全停用 API,或是限制在 API 回應中分享應用程式身分,以便控制實驗性 Android WebView Media Integrity API 的行為。您可以針對所有來源和每個來源啟用這項設定。

1.10.0-rc01 版

2024 年 1 月 10 日

發布 androidx.webkit:webkit:1.10.0-rc01。這個版本與 1.10.0-beta01 版沒有任何變更。

1.10.0-beta01 版

2023 年 12 月 13 日

發布 androidx.webkit:webkit:1.10.0-beta011.10.0-beta01 版包含此連結所列的修訂項目。

  • 沒有 1.10.0-alpha01 的功能變更。

1.10.0-alpha01 版本

2023 年 11 月 29 日

發布 androidx.webkit:webkit:1.10.0-alpha011.10.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • WebSettingsCompat 中新增 API,以便完全停用 API 或限制在 API 回應中分享應用程式身分,以便控制實驗性 Android WebView Media Integrity API 行為。您可以針對所有來源和每個來源啟用這項設定。

版本 1.9

1.9.0 版

2023 年 11 月 29 日

發布 androidx.webkit:webkit:1.9.01.9.0 版包含此連結所列的修訂項目。

自 1.8.0 版以來的重要變更

  • 針對 WebView 新增多重設定檔 API。
  • 新增了 API,可在網頁載入前插入及執行 JavaScript。
    • WebViewCompat#addDocumentStartJavascript API 可讓應用程式將指令碼插入 WebView,保證會在執行任何網頁指令碼之前執行。此 API 可讓應用程式指定要啟用指令碼的來源清單,確保指令碼只在預期的網頁上執行。與 WebView#MeasureJavascript 不同的是,這個 API 可以在載入時讓內嵌 iframe 中的指令碼執行。應用程式可將這個新的 API 與 WebViewCompat#addWebMessageListener 搭配使用,以穩定的方式在網頁中設定與 JavaScript 的雙向通訊。
  • 新增 API,用於修改 Privacy Sandbox 歸因報表事件的登錄方式。
    • 我們推出了新的 API WebSettingsCompat#setAttributionRegistrationBehavior,讓開發人員設定歸因來源和觸發條件是否已登錄為應用程式本身,或來自 WebView 中的網頁內容。這個方法也可用來停用 WebView 中的歸因報表。此外,我們還加入了新的 API WebSettingsCompat#getAttributionRegistrationBehavior 以取得目前行為。
    • 詳情請參閱 Privacy Sandbox 說明文件
  • 新增了可覆寫用戶端提示的使用者代理程式中繼資料的 API。
    • 我們推出新的 API WebSettingsCompat#setUserAgentMetadata,藉此覆寫 WebView 的使用者代理程式中繼資料,用於填入使用者代理程式用戶端提示。另外,我們也新增了另一個 API WebSettingsCompat#getUserAgentMetadata,藉此取得目前的使用者代理程式覆寫值。我們建議應用程式在每次應用程式使用 WebSettings.setUserAgentString 變更預設使用者代理程式字串時,使用新的 API 設定正確的覆寫值,確保在所有情況下使用的值正確無誤。

1.9.0-rc01 版本

2023 年 11 月 15 日

發布 androidx.webkit:webkit:1.9.0-rc01。這個版本與 1.9.0-beta01 版沒有任何變更。

1.9.0-beta01 版本

2023 年 11 月 1 日

發布 androidx.webkit:webkit:1.9.0-beta011.9.0-beta01 版包含此連結所列的修訂項目。

API 變更

  • 解決使用者代理程式中繼資料 API 的是否可為空值問題。我們會更新 BrandVersion 類別以使用建構工具模式,讓 UserAgentMetadata 類別的 getter 和 setter 是否可為空值保持一致。(Ibf195)。
  • 使用 @UiThreadProfileStoreWebViewCompat#setProfileWebViewCompat.getProfile 加上註解。(I499b2)。

1.9.0-alpha01 版本

2023 年 10 月 18 日

發布 androidx.webkit:webkit:1.9.0-alpha011.9.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • 我們新增了多重設定檔 API,方便您在 WebViews 之間建立不同的瀏覽工作階段,每個設定檔都有各自的資料 (例如 Cookie)。您可以建立設定檔並指派給 WebView 執行個體,日後再擷取設定檔,供任何資料存取使用。提供單例模式類別 ProfileStore,協助您透過 API 建立或刪除設定檔;getOrCreateProfilegetProfilegetAllProfileNamesdeleteProfileProfile 類別將有不同的 API,可用於取得與這個設定檔相關聯的資料,例如名稱、GeoLocationPermissionsServiceWorkerControllerCookieManagerWebStorage。根據預設,每個 WebView 都會透過預設設定檔執行,但您可以使用相關的 WebViewCompat#setProfile 變更,而您可以使用 WebViewCompat#getProfile 擷取 WebView 的設定檔。(I32d22)。
  • 新增 API,用於修改 Attribution Reporting 事件的登錄方式。我們推出了新的 API WebSettingsCompat#setAttributionRegistrationBehavior,可讓開發人員設定來源和觸發條件必須登錄為來自應用程式本身,還是來自 WebView 中的網頁內容。這個方法也可用來在「WebView」中停用歸因報表。此外,我們還加入了新的 API WebSettingsCompat#getAttributionRegistrationBehavior 以取得目前行為。詳情請參閱 Privacy Sandbox 說明文件。 (I661f2)。
  • 新增 API 以覆寫使用者代理程式中繼資料。我們推出新的 API WebSettingsCompat#setUserAgentMetadata,可覆寫 WebView 的使用者代理程式中繼資料,可用於填入使用者代理程式用戶端提示。此外,我們也新增了另一個 API WebSettingsCompat#getUserAgentMetadata,藉此取得目前的使用者代理程式覆寫值。我們建議應用程式使用新的 API 設定正確的覆寫值,不必依賴變更使用者代理程式。(I74500)。
  • 新增 API,用於插入要在網頁載入期間執行的 JavaScript。WebViewCompat.addDocumentStartJavascript API 允許應用程式將指令碼插入 WebView,而 WebView 會在執行任何網頁指令碼前執行。此 API 可讓應用程式指定要啟用指令碼的來源清單,確保指令碼只在預期的網頁上執行。與 WebView.evaluateJavascript 不同,這個 API 會在載入時允許在內嵌 iframe 中執行指令碼。(Ide063)。

1.8 版

1.8.0 版

2023 年 9 月 6 日

發布 androidx.webkit:webkit:1.8.01.8.0 版包含此連結所列的修訂項目。

自 1.7.0 版以來的重要變更

1.8.0-rc01 版

2023 年 8 月 9 日

androidx.webkit:webkit:1.8.0-rc011.8.0-beta01起沒有變更。1.8.0-rc01 版包含以下修訂項目。

1.8.0-beta01 版

2023 年 7 月 26 日

androidx.webkit:webkit:1.8.0-beta011.8.0-alpha01起沒有變更。1.8.0-beta01 版包含以下修訂項目。

1.8.0-alpha01 版

2023 年 6 月 7 日

發布 androidx.webkit:webkit:1.8.0-alpha011.8.0-alpha01 版包含此連結所列的修訂項目。

API 變更

  • 請參閱「外部貢獻」部分。

外部貢獻

  • 新增透過 WebMessagePortCompat#postMessageJsReplyProxy#postMessageWebViewCompat#postWebMessage 傳遞 ArrayBuffer、透過 WebMessagePortCompatWebMessageListener 從 JavaScript 接收 ArrayBuffer,以及從 WebMessagePortCompat 從 JavaScript 接收可轉移 ArrayBuffer 的支援功能。請注意,這個 API 只會從 WebView 116 版起開放使用。(Ie7567b/251152171)

1.7 版

1.7.0 版

2023 年 5 月 24 日

發布 androidx.webkit:webkit:1.7.01.7.0 版包含此連結所列的修訂項目。

自 1.6.0 版以來的重要變更

  • 我們在 WebView 中新增了對圖片拖曳功能的支援。您可以依照類別說明文件的說明,將新的 DropDataContentProvider 加入應用程式的資訊清單,讓使用者從 WebView 中移出圖片。
  • 我們新增了 ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) API,可用於設定 WebView 將用於目前程序的基本目錄。與 ProcessGlobalConfig 上的所有方法相同,必須在 WebView 的第一個例項例項化之前呼叫這個方法。新增這個方法可為 Android 架構提供調整 WebView 設定的功能。如果是一般用途的應用程式,不建議使用此方法。

1.7.0-rc01 版

2023 年 5 月 10 日

androidx.webkit:webkit:1.7.0-rc011.7.0-beta01起沒有變更。1.7.0-rc01 版包含以下修訂項目。

1.7.0-beta01 版

2023 年 4 月 5 日

發布 androidx.webkit:webkit:1.7.0-beta011.7.0-beta01 版包含此連結所列的修訂項目。

API 變更

  • 微調功能旗標和方法名稱,並讓 setDirectoryBasePaths() 接受 File 而不是 String (Ib0d0a)

1.7.0-alpha03 版

2023 年 3 月 8 日

發布 androidx.webkit:webkit:1.7.0-alpha031.7.0-alpha03 版包含此連結所列的修訂項目。

API 變更

  • 新增 ProcessGlobalConfig#setDirectoryBasePath(String, String) API,可用於設定 WebView 將用於目前程序的基本目錄。(Ibd1a1b/250553687)

修正錯誤

  • 修正無效的 ProGuard 規則,在使用 DexGuard 時造成建構錯誤 (Ia65c2b/270034835)

1.7.0-alpha02 版

2023 年 2 月 8 日

發布 androidx.webkit:webkit:1.7.0-alpha021.7.0-alpha02 版包含此連結所列的修訂項目。

修正錯誤

  • DropDataContentProvider 的說明文件錯誤。

1.7.0-alpha01 版

2023 年 1 月 25 日

發布 androidx.webkit:webkit:1.7.0-alpha011.7.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • 即將在 WebView 中新增對圖片拖曳功能的支援。您可以在應用程式的資訊清單中新增 DropDataContentProvider,藉此讓使用者從 WebView 中移出圖片。(05a1a6)。

1.6 版本

1.6.1 版

2023 年 3 月 22 日

發布 androidx.webkit:webkit:1.6.11.6.1 版包含此連結所列的修訂項目。

修正錯誤

  • 修正 ProGuard 剖析錯誤 (Ia65c2)

1.6.0 版

2023 年 1 月 25 日

發布 androidx.webkit:webkit:1.6.01.6.0 版包含此連結所列的修訂項目。

自 1.5.0 版之後的重要變更

  • 新增 ProcessGlobalConfig API,讓應用程式得以提供載入 WebView 前必須進行的組態設定,例如 WebView 資料目錄後置字串。此設定必須在應用程式啟動時盡快設定並套用,以確保此動作在其他執行緒呼叫可將 WebView 載入處理程序的方法之前發生。
  • 已新增 CookieManagerCompat API,以便透過新的 getCookieInfo 方法展開 android.webkit.CookieManager,這樣便能擷取特定 URL 上設定的所有 Cookie 的所有屬性。這與 CookieManager 中現有的 getCookie API 不同,getCookie API 只會傳回 Cookie 的名稱和值屬性。
  • 如果在 WebView 中由管理員進行設定,WebSettingsCompat 可採用新的方法啟用/停用 EnterpriseAuthenticationAppLinkPolicy 的效果,並取得目前的設定。這項功能可讓 WebView 開啟驗證應用程式,而不是開啟驗證網址。這項功能不會影響非由企業政策管理的裝置。
  • WebSettingsCompat 中新增新的 API,以便讓應用程式將 X-Requested-With 標頭中的應用程式套件名稱明確地傳送給許可清單來源。每次從 WebView 收到要求時,傳統上都會傳送此標頭。

1.6.0-rc01 版

2023 年 1 月 11 日

發布 androidx.webkit:webkit:1.6.0-rc011.6.0-rc01 版包含以下修訂項目。

修正錯誤

  • 修正了在 SDK L 以下版本上執行時,WebViewFeature.isStartupFeatureSupported(Context, String) 中的 NullPointerException。(Ic7292)。

1.6.0-beta01 版

2022 年 12 月 7 日

發布 androidx.webkit:webkit:1.6.0-beta011.6.0-beta01 版包含此連結所列的修訂項目。

API 變更

  • ProcessGlobalConfig 已變更為可使用一般建構函式和靜態套用方法。您應盡早為每個程序呼叫一次套用方法,如果多次呼叫,則會擲回 IllegalStateExceptionProcessGlobalConfig 物件不再對 setter 呼叫次數有任何限制。(I456c3)。

1.6.0-alpha03 版

2022 年 11 月 9 日

發布 androidx.webkit:webkit:1.6.0-alpha031.6.0-alpha03 版包含此連結所列的修訂項目。

新功能

  • 新增 ProcessGlobalConfig 類別,讓使用者在載入 WebView 前設定處理程序全域設定。WebView 包含部分 process-global 設定參數,這些參數在載入 WebView 後即無法變更 (例如 WebView 資料目錄)。此類別可讓應用程式設定這些參數。此設定必須在應用程式啟動時盡快設定並套用,以確保此動作在其他執行緒呼叫可將 WebView 載入處理程序的方法之前發生。(I7c0e0b/250553687)
  • 新增 API,讓應用程式將 X-Requested-With 標頭中的應用程式套件名稱明確傳送至已加入許可清單的來源。每次從 WebView 收到要求時,傳統上都會傳送此標頭。(I0adfeb/226552535)

API 變更

  • 所有 Android 版本皆支援 WebView 105 以上版本中的 WebSettingsCompat#setAlgorithmicDarkeningAllowed API。僅 Android Q 以上版的 API 支援先前的 WebView 版本。因此,此 API 不再標示為 @RequiresApi(Build.VERSION_CODES.Q)。(I3ac1d)。

1.6.0-alpha02 版本

2022 年 10 月 24 日

發布 androidx.webkit:webkit:1.6.0-alpha021.6.0-alpha02 版包含此連結所列的修訂項目。

新功能

  • 新增 CookieManagerCompat 類別以及 getCookieInfo API,用於擷取特定網址上所有 Cookie 的所有屬性。這與 CookieManager 中現有的 getCookie API 不同,後者只會傳回 Cookie 的名稱和值屬性。(I07365b/242161756)

1.6.0-alpha01 版

2022 年 8 月 24 日

發布 androidx.webkit:webkit:1.6.0-alpha011.6.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • WebSettingsCompat 中新增 API,以便在管理員透過 WebView 設定 EnterpriseAuthenticationAppLinkPolicy 時啟用/停用相關功能。這項功能可讓 WebView 開啟驗證應用程式,而不是開啟驗證網址。這項功能不會影響非由企業政策管理的裝置。

1.5.0 版

1.5.0 版

2022 年 8 月 24 日

發布 androidx.webkit:webkit:1.5.01.5.0 版包含此連結所列的修訂項目

自 1.4.0 版以來的重要異動

  • 用於 WebSettingsCompat 的新 setAlgorithmicDarkeningAllowed API 已取代舊的 setForceDarksetForceDarkStrategy API。指定 SDK 33 以上版本 (T) 的應用程式應使用新的 API,因為舊的 API 將不再對這些應用程式產生任何作用。
  • 現在只要將 setReverseBypassEnabled 設為 true,就可以透過 ProxyCofig.Builder 設定網址允許清單,以便使用已設定的 Proxy。這個做法生效後,所有其他網址都會略過已設定的 Proxy。

1.5.0-rc01 版

2022 年 8 月 10 日

androidx.webkit:webkit:1.5.0-rc011.5.0-beta01起沒有變更。1.5.0-rc01 版包含以下修訂項目。

1.5.0-beta01 版

2022 年 6 月 29 日

發布 androidx.webkit:webkit:1.5.0-beta011.5.0-beta01 版包含此連結所列的修訂項目

API 變更

  • Alogrithimic Darkening 相關 API 現在會透過備註說明必須使用 API 級別 Q。由於這些裝置並不提供深色主題選項,因此這個 API 在 Q 以下的 API 級別不會發揮任何作用。(I0905e)。

1.5.0-alpha01 版

2022 年 5 月 18 日

發布 androidx.webkit:webkit:1.5.0-alpha011.5.0-alpha01 版包含此連結所列的修訂項目

新功能

  • WebViewCompat 上新增 getVariationsHeader() 方法,取得 WebView 傳送的 X-Client-Data 標頭值。傳回的值會是採用 Base64 編碼的 ClientVariations protobuf。
  • WebSettingsCompat 上新增 API 以允許/禁止針對 targetSdk >= 33 的應用程式進行演算法調暗。(I29597)。

API 變更

  • ProxyCofig.Builder 中新增方法即可設定反向略過。如果將反向略過設為 True,只有略過清單中的網址會使用 Proxy 設定。(I9eaa2b/168728599)

修正錯誤

  • 修正深色主題說明文件中的錯字。(I36ebfb/194343633)
  • 已修正以下錯誤:WebViewAssetLoader.Builder 方法無預警地依順序執行。(If420db/182196765)

1.4.0 版

1.4.0 版

2020 年 12 月 16 日

發布 androidx.webkit:webkit:1.4.01.4.0 版包含此連結所列的修訂項目

自 1.3.0 版以來的重大異動

  • 新增了 setSafeBrowsingAllowlist() API 以取代 setSafeBrowsingWhitelist()。這項功能可讓應用程式更新程式碼,避免使用非包含性的術語,同時支援與已淘汰 API 相同的 Android SDK 和 WebView 版本。
  • 修正了 setProxyOverride 中無法正確套用備用規則的錯誤。

1.4.0-rc02 版本

2020 年 12 月 2 日

發布 androidx.webkit:webkit:1.4.0-rc021.4.0-rc02 版包含此連結所列的修訂項目。

修正錯誤

  • 修正使用 setProxyOverride 時無法正確套用備用規則的問題。

1.4.0-rc01 版

2020 年 11 月 11 日

androidx.webkit:webkit:1.4.0-rc011.4.0-beta01起沒有變更。1.4.0-rc01 版包含此連結所列的修訂項目。

1.4.0-beta01 版

2020 年 10 月 14 日

androidx.webkit:webkit:1.4.0-beta011.4.0-alpha01起沒有變更。1.4.0-beta01 版包含此連結所列的修訂項目

1.4.0-alpha01 版

2020 年 9 月 16 日

發布 androidx.webkit:webkit:1.4.0-alpha01查看 1.4.0-alpha01 版的修訂項目

API 變更

  • 新增了 WebViewCompat#setSafeBrowsingAllowlist() API 以取代 setSafeBrowsingWhitelist()。這項功能可讓應用程式更新程式碼,避免使用非包含性的術語,同時支援與已淘汰 API 相同的 Android SDK 和 WebView 版本。(I8d65d)

1.3.0 版

1.3.0 版

2020 年 8 月 19 日

發布 androidx.webkit:webkit:1.3.01.3.0 版包含此連結所列的修訂項目

自 1.2.0 版以來的重大異動

  • ForceDarkStrategy API 提供 WebView 調暗的控制項 (CSS/網路內容調暗及自動調暗) 功能。
  • WebMessageListener 及其相關 API 提供一種簡單又安全的機制,可用來建立網頁內容和 WebView 嵌入式應用程式之間的通訊內容。
  • 使用 isMultiProcessEnabled API 檢查 WebView 是否在多個程序中執行。這可能會從 Android O 開始提供,也就是說,網頁內容和沙箱程序都是獨立的,而且與應用程式程式程序分開。此沙箱轉譯器可能會與同一個應用程式中的其他 WebView 共用,但不會與其他應用程式程序共用。

1.3.0-rc02 版

2020 年 8 月 5 日

發布 androidx.webkit:webkit:1.3.0-rc02查看 1.3.0-rc02 版的修訂項

修正錯誤

  • 修正相容性問題,此問題會導致應用程式在 Android Studio 執行個體執行的情況下啟動時,WebMessageListener 可能有時會在本機開發期間當機。

1.3.0-rc01 版

2020 年 6 月 24 日

androidx.webkit:webkit:1.3.0-rc011.3.0-beta01起沒有變更。1.3.0-rc01 版包含此連結所列的修訂項目

1.3.0-beta01 版

2020 年 6 月 10 日

發布 androidx.webkit:webkit:1.3.0-beta011.3.0-beta01 版包含以下修訂項目。

新功能

  • 使用 ForceDarkStrategy API 可控制 WebView 暗度 (CSS/網頁內容調暗或自動調暗)。
  • WebMessageListener API 提供一種簡單又安全的機制,可用來建立網頁內容和 WebView 嵌入式應用程式之間的通訊內容。
  • 使用 MultiProcessEnabled API 可檢查 WebView 是否在多程序模式中執行。

1.3.0-alpha03 版

2020 年 5 月 27 日

發布 androidx.webkit:webkit:1.3.0-alpha031.3.0-alpha03 版包含此連結所列的修訂項目。

API 變更

  • addWebMessageListener 方法現在會接收系統允許的來源規則 Set<String> (先前為 List<String>)。

1.3.0-alpha02 版

2020 年 4 月 29 日

發布 androidx.webkit:webkit:1.3.0-alpha02查看 1.3.0-alpha02 版的修訂項

新功能

  • 使用 MultiProcessEnabled API 可檢查 WebView 是否在多程序模式中執行。

API 變更

  • 所有深色策略常數現在前面都會加上 DARK_STRATEGY

1.3.0-alpha01 版

2020 年 4 月 15 日

發布 androidx.webkit:webkit:1.3.0-alpha011.3.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • 使用 ForceDarkStrategy API 可控制 WebView 調暗 (CSS/網路內容調暗或自動調暗)。
  • WebMessageListener API 提供一種簡單又安全的機制,可用來建立網頁內容和 WebView 嵌入式應用程式之間的通訊內容。

1.2.0 版

1.2.0 版

2020 年 3 月 4 日

發布 androidx.webkit:webkit:1.2.01.2.0 版包含此連結所列的修訂項目。

自 1.1.0 版以來的重大異動

  • 新增 ForceDark API 以控制 WebView 是否應以深色模式轉譯。

1.2.0-rc01 版

2020 年 2 月 19 日

androidx.webkit:webkit:1.2.0-rc011.2.0-beta01起沒有變更。1.2.0-rc01 版包含此連結所列的修訂項目。

1.2.0-beta01 版

2020 年 2 月 5 日

發布 androidx.webkit:webkit:1.2.0-beta01,且自 1.2.0-alpha01 版以來皆無變更。1.2.0-beta01 版包含此連結所列的修訂項目

1.2.0-alpha01 版

2019 年 12 月 18 日

發布了 androidx.webkit:webkit:1.2.0-alpha011.2.0-alpha01 版本包含這些修訂版本

新功能

  • 使用 ForceDark API 可控制 WebView 是否應以深色模式轉譯。

1.1.0 版本

1.1.0 版本

2019 年 11 月 7 日

發布了 androidx.webkit:webkit:1.1.01.1.0 版包含此連結所列的修訂項目

自 1.0.0 版本以來的重要變更

  • 使用 getter API 補充 setWebViewClient()setWebChromeClient()
  • 使用 ProxyController API 可針對應用程式的 WebView 設定網路要求 Proxy。
  • 使用 WebViewAssetLoader API 可簡化透過要求攔截從應用程式資料目錄載入 APK 資產、資源和檔案。如此就可允許存取網路和本機資源,無須停用 CORS。
  • 使用 TracingController API 可出於偵錯目的收集 WebView 追蹤資訊。
  • 使用 RenderProcess API 可管理 WebView 轉譯器服務,以及偵測是否有因表現不良的內容而造成 WebView 轉譯器沒有回應。
  • 更新現有的 API,加入是否可為空值 (@NonNull@Nullable) 和執行緒 (@UiThread@WorkerThread) 註解。

1.1.0-rc01 版本

2019 年 10 月 9 日

發布了 androidx.webkit:webkit:1.1.0-rc011.1.0-rc01 版包含這些修訂版本

修正錯誤

  • 修正如果傳遞空值用戶端就可能造成 setWebViewRenderProcessClient() 停止運作的問題。

1.1.0-beta01 版本

2019 年 9 月 5 日

發布了 androidx.webkit:webkit:1.1.0-beta01。您可以前往這裡查看這個版本包含的修訂項目。

新功能

  • 使用 WebViewAssetLoader 的新 InternalStoragePathHandler 可載入應用程式資料目錄中的檔案。

API 相關異動

  • ProxyConfig#getProxyRules() 現在會傳回無法修改的 ProxyRule 執行個體清單,這是一種新類別,可保存配置篩選器及其對應的 Proxy 網址。

修正錯誤

  • 如果無法判斷檔案路徑的 MIME 類型,WebViewAssetLoader 會預設為「文字/純文字」MIME 類型 (而不是空值)。
  • 載入路徑名稱中含有特殊字元的檔案時,WebViewAssetLoader 不會再捨棄 NullPointerException

1.1.0-alpha02 版

2019 年 8 月 7 日

發布 androidx.webkit:webkit:1.1.0-alpha02。您可以前往這裡查看這個版本包含的修訂項目。

新功能

  • WebViewAssetLoader 會公開 PathHandler 介面,允許應用程式建立自訂路徑處理功能。

API 相關異動

  • 由於 WebViewAssetLoader 不應為子類別,因此現在為最終類別。
  • WebViewAssetLoader#PathHandler 的實作方式目前為公開且為最終。
  • ProxyConfig 方法名稱的小幅度變更。
  • ProxyController:加入新方法 addDirect()addDirect(String) 以直接連接至伺服器;已移除 DIRECT 字串。
  • 更新現有的 API,加入是否可為空值 (@NonNull@Nullable) 和執行緒 (@UiThread@WorkerThread) 註解。

1.1.0-alpha01 版

2019 年 5 月 7 日

發布了 androidx.webkit:webkit:1.1.0-alpha01。您可以前往這裡查看這個版本包含的修訂項目。

新功能

  • 使用 Getter API 補充 setWebViewClient()setWebChromeClient()
  • 使用 ProxyController API 可針對應用程式的 WebView 設定網路要求 Proxy。
  • 使用 AssetLoader API,可透過要求攔截簡化 APK 資產和資源載入,讓使用者不需停用 CORS 即可存取網路資源。
  • 使用 TracingController API 可出於偵錯目的收集 WebView 追蹤資訊。
  • 使用 RenderProcess API 可管理 WebView 轉譯器服務,以及偵測是否有因表現不良的內容而造成 WebView 轉譯器沒有回應。

修正錯誤

  • 針對現有 API 的文件格式設定小幅度修正。