Webkit
Bản cập nhật mới nhất | Bản phát hành ổn định | Bản phát hành dùng thử | Bản phát hành beta | Bản phát hành alpha |
---|---|---|---|---|
Ngày 11 tháng 12 năm 2024 | 1.9.0 | - | - | 1.13.0-alpha02 |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên Webkit, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.
Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle
cho ứng dụng hoặc mô-đun:
Groovy
dependencies { implementation "androidx.webkit:webkit:1.9.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.9.0") }
Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.
Ý kiến phản hồi
Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.
Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.
Phiên bản 1.13
Phiên bản 1.13.0-alpha02
Ngày 11 tháng 12 năm 2024
Phát hành androidx.webkit:webkit:1.13.0-alpha02
. Phiên bản 1.13.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm API gắn thẻ ổ cắm vào
WebView
để tính lưu lượng truy cập mạng củaWebView
bằngNetworkStatsManager
/TrafficStats
. Tính năng này sẽ chỉ có trongWebView
M133. (Ica441, b/374932688)
Thay đổi về API
- Cập nhật API Tìm nạp trước bằng cách đổi tên
PrefetchParameter
thànhSpeculativeLoadingParamaters
, giới thiệuPrefetchNetworkException
mới, thay thếPrefetchOperationCallback
bằngOutcomeReceiverCompat
và cập nhật javadoc. (If5072) - Nhận thông tin chẩn đoán từ API khởi động không đồng bộ của WebView.
- Cung cấp tuỳ chọn để các ứng dụng chỉ kích hoạt quá trình khởi chạy không chặn luồng giao diện người dùng. (I9bf2b)
Sửa lỗi
- Thư viện này hiện sử dụng chú giải về tính chất rỗng của JSpecify, là loại sử dụng. Nhà phát triển Kotlin nên sử dụng các đối số trình biên dịch sau để thực thi cách sử dụng chính xác:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I0e4c5, b/326456246)
Phiên bản 1.13.0-alpha01
Ngày 13 tháng 11 năm 2024
Phát hành androidx.webkit:webkit:1.13.0-alpha01
. Phiên bản 1.13.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm API khởi động không đồng bộ
WebView
thử nghiệm. (I94b8a) - Tìm nạp trước URL trong Hồ sơ: Ra mắt một API mới trong Hồ sơ để cho phép nhà phát triển kích hoạt tính năng tìm nạp trước URL. Xoá nội dung tìm nạp trước: Thêm một API để xoá nội dung tìm nạp trước đang diễn ra. (I42c5c)
Thay đổi về API
- Ngừng sử dụng
WebView.startSafeBrowsing
. (If5626)
Phiên bản 1.12
Phiên bản 1.12.1
Ngày 2 tháng 10 năm 2024
Phát hành androidx.webkit:webkit:1.12.1
. Phiên bản 1.12.1 bao gồm các thay đổi sau.
Sửa lỗi
- Giải quyết vấn đề khiến API 1.12.0 không có trong bản phát hành.
Phiên bản 1.12.0
Ngày 18 tháng 9 năm 2024
Phát hành androidx.webkit:webkit:1.12.0
. Phiên bản 1.12.0 bao gồm các thay đổi sau.
Các thay đổi quan trọng kể từ phiên bản 1.11.0
- Thêm một API mới vào
WebSettingsCompat
để bật/tắt BackForwardCache choWebSettings
này. API này đang trong giai đoạn thử nghiệm và có thể thay đổi trong tương lai. (aosp/3111705) - Thêm một API mới vào
WebSettingsCompat
để kiểm soát hành vi Tải dự đoán choWebSettings
này. Hiện tại, bạn chỉ có thể sử dụng tính năng Kết xuất trước. API này đang trong giai đoạn thử nghiệm và có thể thay đổi trong tương lai. (I13962) - Thêm một API mới để bật tính năng Xác thực web trong
WebView
. Nhà phát triển có thể bật/tắt lệnh gọiWebAuthn
trongWebView
cho ứng dụng của họ bằngWebSettingsCompat#setWebAuthenticationSupport
. (I8187f)
Phiên bản 1.12.0-rc01
Ngày 4 tháng 9 năm 2024
Phát hành androidx.webkit:webkit:1.12.0-rc01
. Bản phát hành này không có thay đổi nào so với bản phát hành 1.12.0-beta01
.
Phiên bản 1.12.0-beta01
Ngày 21 tháng 8 năm 2024
Phát hành androidx.webkit:webkit:1.12.0-beta01
. Phiên bản 1.12.0-beta01 bao gồm các thay đổi sau.
Sửa lỗi
- Xoá phần trình bày quyền truy cập vào API nền tảng mới theo cách thủ công vì việc này diễn ra tự động thông qua tính năng tạo mô hình API khi sử dụng R8 với AGP 7.3 trở lên (ví dụ: R8 phiên bản 3.3) và cho tất cả các bản dựng khi sử dụng AGP 8.1 trở lên (ví dụ: D8 phiên bản 8.1). Những ứng dụng không sử dụng AGP nên cập nhật lên D8 phiên bản 8.1 trở lên. Hãy xem bài viết này để biết thêm thông tin. (Ia60e0, b/345472586)
Phiên bản 1.12.0-alpha02
Ngày 12 tháng 6 năm 2024
Phát hành androidx.webkit:webkit:1.12.0-alpha02
. Phiên bản 1.12.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm một API mới vào
WebSettingsCompat
để bật/tắtBackForwardCache
. API này đang trong giai đoạn thử nghiệm và có thể thay đổi trong tương lai. (I64a38) - Thêm một API mới vào
WebSettingsCompat
để kiểm soát hành vi Tải dự đoán cho WebSettings này. Hiện tại, bạn chỉ có thể sử dụng tính năng Kết xuất trước. API này đang trong giai đoạn thử nghiệm và có thể thay đổi trong tương lai. (I13962)
Thay đổi về API
- Một số phương thức hiện được ghi lại bằng
@UiThread
khi thích hợp. (I6c7e0), (I44541) - Các phương thức an toàn theo luồng hiện được ghi lại bằng
@AnyThread
. (I70189) - Tăng
minSdkVersion
từ 19 lên 21. (Id7a43)
Phiên bản 1.12.0-alpha01
Ngày 17 tháng 4 năm 2024
Phát hành androidx.webkit:webkit:1.12.0-alpha01
. Phiên bản 1.12.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm một API mới để bật tính năng Xác thực web trong
WebView. Developers
có thể bật/tắt các lệnh gọiWebAuthn
trongWebView
cho ứng dụng của họ bằngWebSettingsCompat#setWebAuthenticationSupport
. (I8187f)
Phiên bản 1.11
Phiên bản 1.11.0
Ngày 1 tháng 5 năm 2024
Phát hành androidx.webkit:webkit:1.11.0
. Phiên bản 1.11.0 bao gồm các thay đổi sau.
Các thay đổi quan trọng kể từ phiên bản 1.10.0
- Cho phép ứng dụng kiểm soát chế độ phát âm thanh trong
WebView
thông qua APIsetAudioMuted
vàisAudioMuted
mới, tương tự như việc tắt tiếng một thẻ trong Chrome. - Ra mắt
URLUtilCompat
, hỗ trợ phân tích cú pháp các tiêu đềContent-Disposition
sử dụng thuộc tính giá trị được mã hoáfilename*
như được xác định trong RFC 6266. API tương thích cũng trực tiếp hiển thị một phương thức để phân tích cú pháp tiêu đềContent-Disposition
, trong đó tên tệp được đề xuất dựa trên URL và loại MIME không mong muốn.
Phiên bản 1.11.0-rc01
Ngày 3 tháng 4 năm 2024
Phát hành androidx.webkit:webkit:1.11.0-rc01
. Bản phát hành này không có thay đổi nào so với bản phát hành 1.11.0-beta01
.
Phiên bản 1.11.0-beta01
Ngày 20 tháng 3 năm 2024
Phát hành androidx.webkit:webkit:1.11.0-beta01
mà không có thay đổi đáng kể nào. Phiên bản 1.11.0-beta01 bao gồm các thay đổi sau.
Phiên bản 1.11.0-alpha02
Ngày 21 tháng 2 năm 2024
Phát hành androidx.webkit:webkit:1.11.0-alpha02
. Phiên bản 1.11.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm các phương thức
setAudioMuted
vàisAudioMuted
để tắt tiếng (và bật tiếng)WebViews
. Phương thức này cho phép bạn ngănWebView
phát âm thanh. (Ie7a33)
Thay đổi về API
URLUtilCompat
được đặt là lớp cuối cùng vì không được phân lớp con. (I49ec1)
Phiên bản 1.11.0-alpha01
Ngày 7 tháng 2 năm 2024
Phát hành androidx.webkit:webkit:1.11.0-alpha01
. Phiên bản 1.11.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm khả năng tương thích cho
URLUtil.guessFileName
. Phiên bản tương thích trongURLUtilCompat
hỗ trợ phân tích cú pháp các tiêu đềContent-Disposition
sử dụng thuộc tính giá trị được mã hoáfilename*
như được xác định trong RFC 6266. API tương thích cũng trực tiếp hiển thị một phương thức để phân tích cú pháp tiêu đềContent-Disposition
, trong đó tên tệp được đề xuất dựa trên URL và loại MIME không mong muốn. (If6ae7, b/309927164)
Phiên bản 1.10
Phiên bản 1.10.0
Ngày 24 tháng 1 năm 2024
Phát hành androidx.webkit:webkit:1.10.0
. Phiên bản 1.10.0 bao gồm các thay đổi sau.
Những thay đổi quan trọng kể từ phiên bản 1.9.0
- Thêm API mới vào WebSettingsCompat để kiểm soát hành vi API Tính toàn vẹn nội dung nghe nhìn của WebView trên Android thử nghiệm bằng cách tắt hoàn toàn API hoặc hạn chế chia sẻ danh tính ứng dụng trong phản hồi API. Bạn có thể bật/tắt tính năng này cho tất cả các nguồn gốc và trên cơ sở từng nguồn gốc.
Phiên bản 1.10.0-rc01
Ngày 10 tháng 1 năm 2024
Phát hành androidx.webkit:webkit:1.10.0-rc01
. Bản phát hành này không có thay đổi nào so với bản phát hành 1.10.0-beta01
.
Phiên bản 1.10.0-beta01
Ngày 13 tháng 12 năm 2023
Phát hành androidx.webkit:webkit:1.10.0-beta01
. Phiên bản 1.10.0-beta01 bao gồm các thay đổi sau.
- Không có thay đổi về chức năng so với
1.10.0-alpha01
.
Phiên bản 1.10.0-alpha01
Ngày 29 tháng 11 năm 2023
Phát hành androidx.webkit:webkit:1.10.0-alpha01
. Phiên bản 1.10.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm một API mới vào
WebSettingsCompat
để kiểm soát hành vi API Tính toàn vẹn nội dung nghe nhìn của WebView trên Android thử nghiệm bằng cách tắt hoàn toàn API hoặc hạn chế chia sẻ danh tính ứng dụng trong phản hồi API. Bạn có thể bật/tắt tính năng này cho tất cả các nguồn gốc và trên cơ sở từng nguồn gốc.
Phiên bản 1.9
Phiên bản 1.9.0
Ngày 29 tháng 11 năm 2023
Phát hành androidx.webkit:webkit:1.9.0
. Phiên bản 1.9.0 bao gồm các thay đổi sau.
Các thay đổi quan trọng kể từ phiên bản 1.8.0
- Thêm một API nhiều hồ sơ mới cho WebView.
- Giao diện Hồ sơ có nhiều API để sử dụng nhằm lấy dữ liệu được liên kết với hồ sơ này, chẳng hạn như tên, GeoLocationPermissions, ServiceWorkerController, CookieManager và WebStorage. Các đối tượng này dành riêng cho hồ sơ và thông tin không được chia sẻ giữa các hồ sơ khác nhau trong ứng dụng.
- Bạn có thể thay đổi hồ sơ mà thực thể
WebView
sử dụng bằng phương thức WebViewCompat#setProfile và truy xuất bằng WebViewCompat#getProfile - ProfileStore mới ra mắt cho phép bạn quản lý các hồ sơ có sẵn trong ứng dụng, bao gồm cả hồ sơ mặc định.
- Các API WebView hiện có như CookieManager#getInstance sẽ tiếp tục hoạt động trên hồ sơ Mặc định.
- Thêm một API để chèn và chạy JavaScript trước khi tải trang.
- API WebViewCompat#addDocumentStartJavascript cho phép ứng dụng chèn tập lệnh vào
WebView
.WebView
được đảm bảo sẽ chạy trước khi thực thi bất kỳ tập lệnh trang nào. API cho phép ứng dụng chỉ định danh sách đích đến của các nguồn gốc để bật tập lệnh, đảm bảo rằng tập lệnh chỉ chạy trên các trang dự kiến. Không giống như WebView#evaluateJavascript, API này sẽ cho phép thực thi các tập lệnh trong Iframe được nhúng khi các tập lệnh đó tải. Các ứng dụng có thể sử dụng API mới này kết hợp với WebViewCompat#addWebMessageListener để thiết lập hoạt động giao tiếp hai chiều với JavaScript trong trang một cách đáng tin cậy.
- API WebViewCompat#addDocumentStartJavascript cho phép ứng dụng chèn tập lệnh vào
- Thêm API để sửa đổi cách đăng ký sự kiện Báo cáo phân bổ trong Hộp cát về quyền riêng tư.
- Chúng tôi đã ra mắt một API mới WebSettingsCompat#setAttributionRegistrationBehavior cho phép nhà phát triển định cấu hình xem các nguồn và điều kiện kích hoạt phân bổ được đăng ký là đến từ chính ứng dụng hay đến từ nội dung web trong WebView. Bạn cũng có thể dùng phương thức này để tắt tính năng Báo cáo phân bổ trong WebView. Ngoài ra, chúng tôi đã thêm một API
WebSettingsCompat#getAttributionRegistrationBehavior
mới để nhận hành vi hiện tại. - Để biết thêm thông tin, hãy xem tài liệu về Hộp cát về quyền riêng tư.
- Chúng tôi đã ra mắt một API mới WebSettingsCompat#setAttributionRegistrationBehavior cho phép nhà phát triển định cấu hình xem các nguồn và điều kiện kích hoạt phân bổ được đăng ký là đến từ chính ứng dụng hay đến từ nội dung web trong WebView. Bạn cũng có thể dùng phương thức này để tắt tính năng Báo cáo phân bổ trong WebView. Ngoài ra, chúng tôi đã thêm một API
- Thêm các API để ghi đè siêu dữ liệu của tác nhân người dùng cho gợi ý ứng dụng.
- Chúng tôi đã ra mắt một API mới, WebSettingsCompat#setUserAgentMetadata để ghi đè siêu dữ liệu tác nhân người dùng cho WebView dùng để điền vào gợi ý ứng dụng tác nhân người dùng. Chúng tôi cũng thêm một API mới khác WebSettingsCompat#getUserAgentMetadata để ghi đè tác nhân người dùng hiện tại. Các ứng dụng nên sử dụng API mới để đặt giá trị ghi đè phù hợp bất cứ khi nào ứng dụng thay đổi chuỗi tác nhân người dùng mặc định bằng cách sử dụng WebSettings.setUserAgentString để đảm bảo các giá trị chính xác đang được sử dụng trong mọi trường hợp.
Phiên bản 1.9.0-rc01
Ngày 15 tháng 11 năm 2023
Phát hành androidx.webkit:webkit:1.9.0-rc01
. Bản phát hành này không có thay đổi nào so với bản phát hành 1.9.0-beta01
.
Phiên bản 1.9.0-beta01
Ngày 1 tháng 11 năm 2023
Phát hành androidx.webkit:webkit:1.9.0-beta01
. Phiên bản 1.9.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
- Giải quyết vấn đề về tính chất rỗng của API siêu dữ liệu của tác nhân người dùng. Chúng ta cập nhật lớp
BrandVersion
để sử dụng mẫu trình tạo, đảm bảo tính nhất quán của tính chất rỗng cho phương thức getter và setter của lớpUserAgentMetadata
. (Ibf195) - Chú thích
ProfileStore
,WebViewCompat#setProfile
vàWebViewCompat.getProfile
bằng@UiThread
. (I499b2)
Phiên bản 1.9.0-alpha01
Ngày 18 tháng 10 năm 2023
Phát hành androidx.webkit:webkit:1.9.0-alpha01
. Phiên bản 1.9.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm API nhiều hồ sơ cho phép bạn có các phiên duyệt web riêng biệt giữa
WebViews
, mỗi hồ sơ có dữ liệu riêng (ví dụ: cookie). Bạn có thể tạo hồ sơ, chỉ định hồ sơ cho các thực thểWebView
và truy xuất các hồ sơ đó sau này để truy cập vào dữ liệu bất kỳ. Có một lớp singletonProfileStore
để giúp bạn quản lý hồ sơ bằng cách tạo hoặc xoá bằng các API;getOrCreateProfile
,getProfile
,getAllProfileNames
vàdeleteProfile
. LớpProfile
sẽ có nhiều API để sử dụng nhằm lấy dữ liệu được liên kết với hồ sơ này, chẳng hạn như tên,GeoLocationPermissions
,ServiceWorkerController
,CookieManager
vàWebStorage
. Theo mặc định, mỗiWebView
sẽ chạy với hồ sơ mặc định. Tuy nhiên, bạn có thể thay đổi hồ sơ đó bằng cách sử dụngWebViewCompat#setProfile
. Liên quan đến điều đó, bạn có thể truy xuất hồ sơ củaWebView
bằng cách sử dụngWebViewCompat#getProfile
. (I32d22) - Thêm API để sửa đổi cách đăng ký sự kiện trong Báo cáo phân bổ. Chúng tôi đã ra mắt một API
WebSettingsCompat#setAttributionRegistrationBehavior
mới cho phép nhà phát triển định cấu hình xem các nguồn và điều kiện kích hoạt được đăng ký là đến từ chính ứng dụng hay đến từ nội dung web trongWebView
. Bạn cũng có thể dùng phương thức này để tắt tính năng Báo cáo phân bổ trongWebView
. Ngoài ra, chúng tôi đã thêm một APIWebSettingsCompat#getAttributionRegistrationBehavior
mới để nhận hành vi hiện tại. Để biết thêm thông tin, hãy xem tài liệu về Hộp cát về quyền riêng tư. (I661f2) - Thêm API để ghi đè siêu dữ liệu của tác nhân người dùng. Chúng tôi đã ra mắt một API mới
WebSettingsCompat#setUserAgentMetadata
để ghi đè siêu dữ liệu của tác nhân người dùng cho WebView. API này được dùng để điền thông tin gợi ý của ứng dụng tác nhân người dùng. Ngoài ra, chúng tôi cũng thêm một API mới khácWebSettingsCompat#getUserAgentMetadata
để nhận các thông tin ghi đè tác nhân người dùng hiện tại. Các ứng dụng nên sử dụng API mới để đặt đúng giá trị ghi đè thay vì dựa vào việc thay đổi user-agent. (I74500) - Thêm một API để chèn JavaScript sẽ chạy trong quá trình tải trang. API
WebViewCompat.addDocumentStartJavascript
cho phép các ứng dụng chèn tập lệnh vào WebView. WebView này sẽ chạy trước khi bất kỳ tập lệnh trang nào được thực thi. API cho phép ứng dụng chỉ định danh sách đích đến của các nguồn gốc để bật tập lệnh, đảm bảo rằng tập lệnh chỉ chạy trên các trang dự kiến. Không giống nhưWebView.evaluateJavascript
, API này sẽ cho phép thực thi các tập lệnh trong Iframe được nhúng khi tải. (Ide063)
Phiên bản 1.8
Phiên bản 1.8.0
Ngày 6 tháng 9 năm 2023
Phát hành androidx.webkit:webkit:1.8.0
. Phiên bản 1.8.0 bao gồm các thay đổi sau.
Những thay đổi quan trọng kể từ phiên bản 1.7.0
- Thêm tính năng hỗ trợ truyền
ArrayBuffer
quaWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
vàWebViewCompat#postWebMessage
, nhậnArrayBuffer
từ JavaScript quaWebMessagePortCompat
vàWebMessageListener
, đồng thời nhậnArrayBuffer
có thể chuyển qua JavaScript quaWebMessagePortCompat
. (aosp/2596550, b/251152171)
Phiên bản 1.8.0-rc01
Ngày 9 tháng 8 năm 2023
androidx.webkit:webkit:1.8.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.8.0-beta01
. Phiên bản 1.8.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.8.0-beta01
Ngày 26 tháng 7 năm 2023
androidx.webkit:webkit:1.8.0-beta01
được phát hành mà không có thay đổi nào kể từ 1.8.0-alpha01
. Phiên bản 1.8.0-beta01 bao gồm các thay đổi sau.
Phiên bản 1.8.0-alpha01
Ngày 7 tháng 6 năm 2023
Phát hành androidx.webkit:webkit:1.8.0-alpha01
. Phiên bản 1.8.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về API
- Xem mục Nội dung đóng góp bên ngoài.
Đóng góp bên ngoài
- Thêm tính năng hỗ trợ truyền
ArrayBuffer
quaWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
vàWebViewCompat#postWebMessage
, nhậnArrayBuffer
từ JavaScript quaWebMessagePortCompat
vàWebMessageListener
, đồng thời nhậnArrayBuffer
có thể chuyển qua JavaScript quaWebMessagePortCompat
. Xin lưu ý rằng API này sẽ chỉ có trongWebView
phiên bản 116. (Ie7567, b/251152171)
Phiên bản 1.7
Phiên bản 1.7.0
Ngày 24 tháng 5 năm 2023
Phát hành androidx.webkit:webkit:1.7.0
. Phiên bản 1.7.0 chứa những thay đổi đã được xác nhận này.
Thay đổi quan trọng kể từ phiên bản 1.6.0
- Chúng tôi đã hỗ trợ thêm tính năng Kéo hình ảnh trong
WebView
. Bạn có thể cho phép người dùng kéo hình ảnh ra khỏiWebView
bằng cách thêmDropDataContentProvider
mới vào tệp kê khai của ứng dụng như mô tả trong tài liệu về lớp. - Chúng tôi đã thêm API
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)
có thể dùng để đặt các thư mục cơ sở màWebView
sẽ sử dụng cho quy trình hiện tại. Giống như tất cả các phương thức trênProcessGlobalConfig
, bạn phải gọi phương thức này trước khi tạo thực thể đầu tiên củaWebView
. Phương thức này được thêm vào để cung cấp cho khung Android khả năng điều chỉnh chế độ cài đặtWebView
. Đối với các ứng dụng dùng cho mục đích chung, bạn không nên sử dụng phương thức này.
Phiên bản 1.7.0-rc01
Ngày 10 tháng 5 năm 2023
androidx.webkit:webkit:1.7.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.7.0-beta01
. Phiên bản 1.7.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.7.0-beta01
Ngày 5 tháng 4 năm 2023
Phát hành androidx.webkit:webkit:1.7.0-beta01
. Phiên bản 1.7.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
- Thay đổi nhỏ đối với cờ tính năng và tên phương thức, đồng thời khiến
setDirectoryBasePaths()
chấp nhận Tệp thay vì Chuỗi (Ib0d0a)
Phiên bản 1.7.0-alpha03
Ngày 8 tháng 3 năm 2023
Phát hành androidx.webkit:webkit:1.7.0-alpha03
. Phiên bản 1.7.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm API
ProcessGlobalConfig#setDirectoryBasePath(String, String)
có thể dùng để đặt các thư mục cơ sở màWebView
sẽ sử dụng cho quy trình hiện tại. (Ibd1a1, b/250553687)
Sửa lỗi
- Khắc phục quy tắc
ProGuard
không hợp lệ gây ra lỗi bản dựng khi sử dụngDexGuard
(Ia65c2, b/270034835)
Phiên bản 1.7.0-alpha02
Ngày 8 tháng 2 năm 2023
Phát hành androidx.webkit:webkit:1.7.0-alpha02
. Phiên bản 1.7.0-alpha02 bao gồm các thay đổi sau.
Sửa lỗi
- Lỗi tài liệu đối với
DropDataContentProvider
.
Phiên bản 1.7.0-alpha01
Ngày 25 tháng 1 năm 2023
Phát hành androidx.webkit:webkit:1.7.0-alpha01
. Phiên bản 1.7.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi sẽ hỗ trợ thêm tính năng Kéo hình ảnh (Image drag) trong
WebView
. Bạn có thể cho phép người dùng kéo hình ảnh ra khỏiWebView
bằng cách thêmDropDataContentProvider
mới vào tệp kê khai của ứng dụng. (05a1a6)
Phiên bản 1.6
Phiên bản 1.6.1
Ngày 22 tháng 3 năm 2023
Phát hành androidx.webkit:webkit:1.6.1
. Phiên bản 1.6.1 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi phân tích cú pháp proguard (Ia65c2)
Phiên bản 1.6.0
Ngày 25 tháng 1 năm 2023
Phát hành androidx.webkit:webkit:1.6.0
. Phiên bản 1.6.0 bao gồm các thay đổi sau.
Các thay đổi quan trọng kể từ phiên bản 1.5.0
- Một ProcessGlobalConfig API mới đã được thêm vào để cho phép ứng dụng cung cấp các chế độ cài đặt cấu hình cần được thiết lập trước khi tải WebView, chẳng hạn như hậu tố của thư mục dữ liệu WebView. Phải thiết lập và áp dụng cấu hình sớm nhất có thể trong quá trình khởi động ứng dụng, để đảm bảo rằng cấu hình này được áp dụng trước khi bất kỳ luồng nào khác có thể gọi một phương thức tải
WebView
vào quy trình. - Một CookieManagerCompat API mới đã được thêm vào để mở rộng android.webkit.CookieManager qua phương thức
getCookieInfo
mới. Phương thức này truy xuất tất cả thuộc tính cho tất cả cookie được đặt trên một URL cụ thể. API này khác với getCookie API (chỉ trả về các thuộc tính tên và giá trị của cookie) hiện có trongCookieManager
. WebSettingsCompat
có các phương thức mới để bật/tắt hiệu ứng củaEnterpriseAuthenticationAppLinkPolicy
nếu quản trị viên đặt trongWebView
và để nhận chế độ cài đặt hiện tại. Tính năng này cho phép WebView mở ứng dụng xác thực thay vì mở URL xác thực. Tính năng này không ảnh hưởng đến những thiết bị không do chính sách doanh nghiệp quản lý.- Thêm API mới vào
WebSettingsCompat
để cho phép các ứng dụng gửi rõ ràng tên gói ứng dụng trong tiêu đềX-Requested-With
đến các nguồn gốc có trong danh sách cho phép. Thường thì tiêu đề được gửi đi trong mọi yêu cầu củaWebView
.
Phiên bản 1.6.0-rc01
Ngày 11 tháng 1 năm 2023
Phát hành androidx.webkit:webkit:1.6.0-rc01
. Phiên bản 1.6.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục
NullPointerException
trongWebViewFeature.isStartupFeatureSupported(Context, String)
khi chạy trên SDK < L. (Ic7292)
Phiên bản 1.6.0-beta01
Ngày 7 tháng 12 năm 2022
Phát hành androidx.webkit:webkit:1.6.0-beta01
. Phiên bản 1.6.0-beta01 bao gồm các thay đổi sau.
Các thay đổi về API
- Đã thay đổi
ProcessGlobalConfig
để sử dụng hàm khởi tạo thông thường và phương thức áp dụng tĩnh. Phương thức áp dụng chỉ được gọi một lần cho mỗi quy trình càng sớm càng tốt và sẽ gửiIllegalStateException
nếu được gọi nhiều lần. Các đối tượngProcessGlobalConfig
không còn bị hạn chế về số lần gọi phương thức setter nữa. (I456c3)
Phiên bản 1.6.0-alpha03
Ngày 9 tháng 11 năm 2022
Phát hành androidx.webkit:webkit:1.6.0-alpha03
. Phiên bản 1.6.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- Thêm lớp
ProcessGlobalConfig
cho phép người dùng đặt cấu hình chung của quy trình trước khi tảiWebView
.WebView
có một số tham số cấu hình chung của quy trình không thay đổi được sau khi đã tảiWebView
(ví dụ: thư mục dữ liệuWebView
). Lớp này cho phép ứng dụng đặt các tham số này. Phải thiết lập và áp dụng cấu hình sớm nhất có thể trong quá trình khởi động ứng dụng, để đảm bảo rằng cấu hình này được áp dụng trước khi bất kỳ luồng nào khác có thể gọi một phương thức tảiWebView
vào quy trình. (I7c0e0, b/250553687) - Thêm API mới để cho phép các ứng dụng gửi tên gói ứng dụng một cách rõ ràng trong tiêu đề X-Request-With đến các nguồn gốc trong danh sách cho phép. Thông thường, tiêu đề đã được gửi đi trong mọi yêu cầu từ
WebView
. (I0adfe, b/226552535)
Các thay đổi về API
- Hỗ trợ API
WebSettingsCompat#setAlgorithmicDarkeningAllowed
trên mọi phiên bản Android ởWebView
phiên bản 105 trở lên. Các phiên bản trước củaWebView
chỉ hỗ trợ API trên Android Q trở lên. Do đó, API này không còn được đánh dấu là@RequiresApi(Build.VERSION_CODES.Q)
. (I3ac1d)
Phiên bản 1.6.0-alpha02
Ngày 24 tháng 10 năm 2022
Phát hành androidx.webkit:webkit:1.6.0-alpha02
. Phiên bản 1.6.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm lớp
CookieManagerCompat
mới cùng với APIgetCookieInfo
truy xuất tất cả thuộc tính cho tất cả cookie được thiết lập trên một URL cụ thể. API này khác với APIgetCookie
(chỉ trả về các thuộc tính tên và giá trị của cookie) hiện có trongCookieManager
. (I07365, b/242161756)
Phiên bản 1.6.0-alpha01
Ngày 24 tháng 8 năm 2022
Phát hành androidx.webkit:webkit:1.6.0-alpha01
. Phiên bản 1.6.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Đã thêm các API trong
WebSettingsCompat
để bật/tắt hiệu ứng củaEnterpriseAuthenticationAppLinkPolicy
nếu quản trị viên đặt trongWebView
. Tính năng này cho phépWebView
mở ứng dụng xác thực thay vì mở URL xác thực. Tính năng này không ảnh hưởng đến những thiết bị không do chính sách doanh nghiệp quản lý.
Phiên bản 1.5.0
Phiên bản 1.5.0
Ngày 24 tháng 8 năm 2022
Phát hành androidx.webkit:webkit:1.5.0
. Phiên bản 1.5.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.4.0
- API
setAlgorithmicDarkeningAllowed
mới trênWebSettingsCompat
sẽ thay thế các APIsetForceDark
vàsetForceDarkStrategy
cũ. Các ứng dụng nhắm đến SDK 33 trở lên (T) nên dùng API mới vì API cũ sẽ không hoạt động được với những ứng dụng đó. - Bạn hiện có thể đặt danh sách các URL được phép để dùng proxy đã định cấu hình thông qua
ProxyCofig.Builder
bằng cách đặtsetReverseBypassEnabled
thànhtrue
. Khi thao tác này có hiệu lực, tất cả các URL khác sẽ bỏ qua proxy đã định cấu hình.
Phiên bản 1.5.0-rc01
Ngày 10 tháng 8 năm 2022
androidx.webkit:webkit:1.5.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.5.0-beta01
. Phiên bản 1.5.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.5.0-beta01
Ngày 29 tháng 6 năm 2022
Phát hành androidx.webkit:webkit:1.5.0-beta01
. Phiên bản beta 1.5.0 bao gồm các thay đổi sau.
Các thay đổi về API
- Các API liên quan đến Alogrithimic Darkening nay được chú thích để đòi hỏi API cấp Q. API này sẽ không có ảnh hưởng nào đến API có cấp độ thấp hơn Q, vì những thiết bị này không hỗ trợ giao diện tối. (I0905e)
Phiên bản 1.5.0-alpha01
Ngày 18 tháng 5 năm 2022
Phát hành androidx.webkit:webkit:1.5.0-alpha01
. Phiên bản 1.5.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm một phương thức
getVariationsHeader()
mới trênWebViewCompat
để nhận giá trị tiêu đề X-Client-Data doWebView
gửi. Giá trị được trả về sẽ là một protobuf ClientVariations được mã hoá dưới dạng base64. - Thêm API trên
WebSettingsCompat
để cho phép/không cho phép thuật toán làm tối đối với ứng dụng có targetSdk >= 33. (I29597)
Các thay đổi về API
- Thêm một phương thức mới trong
ProxyCofig.Builder
để thiết lập chế độ bỏ qua đảo ngược. Đặt chế độ bỏ qua đảo ngược thành true có nghĩa là chỉ các URL trong danh sách bỏ qua mới sử dụng chế độ cài đặt proxy. (I9eaa2, b/168728599)
Sửa lỗi
- Sửa lỗi chính tả trong tài liệu về giao diện tối. (I36ebf, b/194343633)
- Khắc phục lỗi trong đó các phương thức
WebViewAssetLoader.Builder
bị phụ thuộc vào thứ tự một cách không chủ đích. (If420d, b/182196765)
Phiên bản 1.4.0
Phiên bản 1.4.0
Ngày 16 tháng 12 năm 2020
Phát hành androidx.webkit:webkit:1.4.0
. Phiên bản 1.4.0 bao gồm các thay đổi sau.
Những thay đổi lớn kể từ phiên bản 1.3.0
- Thêm một API
setSafeBrowsingAllowlist()
mới để thay thếsetSafeBrowsingWhitelist()
. Điều này giúp ứng dụng cập nhật mã để tránh thuật ngữ không dành cho tất cả mọi người trong khi vẫn hỗ trợ cùng một phạm vi các SDK Android và phiên bản WebView như API không dùng nữa. - Khắc phục lỗi trong setProxyOverride khiến quy tắc dự phòng không được áp dụng chính xác.
Phiên bản 1.4.0-rc02
Ngày 2 tháng 12 năm 2020
Phát hành androidx.webkit:webkit:1.4.0-rc02
. Phiên bản 1.4.0-rc02 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục các quy tắc dự phòng không được áp dụng chính xác khi sử dụng setProxyOverride.
Phiên bản 1.4.0-rc01
Ngày 11 tháng 11 năm 2020
androidx.webkit:webkit:1.4.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.4.0-beta01
. Phiên bản 1.4.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.4.0-beta01
Ngày 14 tháng 10 năm 2020
androidx.webkit:webkit:1.4.0-beta01
được phát hành mà không có thay đổi nào kể từ 1.4.0-alpha01
. Phiên bản 1.4.0-beta01 bao gồm các thay đổi sau.
Phiên bản 1.4.0-alpha01
Ngày 16 tháng 9 năm 2020
Phát hành androidx.webkit:webkit:1.4.0-alpha01
. Phiên bản 1.4.0-alpha01 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm một API
WebViewCompat#setSafeBrowsingAllowlist()
mới để thay thếsetSafeBrowsingWhitelist()
. Điều này giúp ứng dụng cập nhật mã để tránh thuật ngữ không dành cho tất cả mọi người trong khi vẫn hỗ trợ cùng một phạm vi các SDK Android và phiên bản WebView như API không dùng nữa. (I8d65d)
Phiên bản 1.3.0
Phiên bản 1.3.0
Ngày 19 tháng 8 năm 2020
Phát hành androidx.webkit:webkit:1.3.0
. Phiên bản 1.3.0 bao gồm các thay đổi sau.
Thay đổi lớn kể từ phiên bản 1.2.0
- ForceDarkStrategy API cấp nhiều quyền kiểm soát hơn trong chế độ làm tối WebView (chế độ làm tối nội dung CSS/web so với chế độ làm tối tự động).
- WebMessageListener và các API liên quan cung cấp một cơ chế đơn giản và an toàn để thiết lập hoạt động giao tiếp giữa nội dung web và ứng dụng nhúng WebView.
- API
isMultiProcessEnabled
để kiểm tra xem WebView có đang chạy trong nhiều tiến trình hay không. Điều này có thể bắt đầu trong Android O và có nghĩa là nội dung web hiển thị trong quy trình kết xuất hình ảnh hộp cát riêng biệt với quy trình đăng ký. Quy trình kết xuất hình ảnh hộp cát này có thể được chia sẻ với các WebView khác trong cùng một ứng dụng nhưng không được chia sẻ với các quy trình đăng ký khác.
Phiên bản 1.3.0-rc02
Ngày 5 tháng 8 năm 2020
Phát hành androidx.webkit:webkit:1.3.0-rc02
. Phiên bản 1.3.0-rc02 bao gồm các thay đổi sau.
Sửa lỗi
- Phiên bản này khắc phục sự cố về khả năng tương thích, trong đó đôi khi
WebMessageListener
gặp sự cố trong quá trình phát triển cục bộ nếu ứng dụng của bạn khởi động bằng trạng thái chạy tức thì Android Studio.
Phiên bản 1.3.0-rc01
Ngày 24 tháng 6 năm 2020
androidx.webkit:webkit:1.3.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.3.0-beta01
. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.3.0-beta01
Ngày 10 tháng 6 năm 2020
Phát hành androidx.webkit:webkit:1.3.0-beta01
. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.
Tính năng mới
- API
ForceDarkStrategy
để kiểm soát chế độ làm tối WebView (làm tối nội dung CSS/web tối so với chế độ làm tối tự động). - API
WebMessageListener
cung cấp một cơ chế đơn giản và an toàn để thiết lập hoạt động giao tiếp giữa nội dung web và ứng dụng nhúng WebView. - API
MultiProcessEnabled
để kiểm tra xem WebView có đang chạy trong chế độ đa tiến trình hay không.
Phiên bản 1.3.0-alpha03
Ngày 27 tháng 5 năm 2020
Phát hành androidx.webkit:webkit:1.3.0-alpha03
. Phiên bản 1.3.0-alpha03 bao gồm các thay đổi sau.
Các thay đổi về API
- Phương thức
addWebMessageListener
hiện nhậnSet<String>
theo các quy tắc gốc được phép (trước đây làList<String>
).
Phiên bản 1.3.0-alpha02
Ngày 29 tháng 4 năm 2020
Phát hành androidx.webkit:webkit:1.3.0-alpha02
. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- MultiProcessEnabled API để kiểm tra xem WebView có đang chạy trong chế độ đa tiến trình hay không.
Các thay đổi về API
- Giờ đây, tất cả hằng số chiến lược làm tối đều có tiền tố là
DARK_STRATEGY
.
Phiên bản 1.3.0-alpha01
Ngày 15 tháng 4 năm 2020
Phát hành androidx.webkit:webkit:1.3.0-alpha01
. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- API
ForceDarkStrategy
để kiểm soát chế độ làm tốiWebView
(làm tối nội dung CSS/web tối so với chế độ làm tối tự động). - API
WebMessageListener
cung cấp một cơ chế đơn giản và an toàn để thiết lập hoạt động giao tiếp giữa nội dung web và ứng dụng nhúng WebView.
Phiên bản 1.2.0
Phiên bản 1.2.0
Ngày 4 tháng 3 năm 2020
Phát hành androidx.webkit:webkit:1.2.0
. Phiên bản 1.2.0 bao gồm các thay đổi sau.
Thay đổi lớn từ phiên bản 1.1.0
- Đã thêm ForceDark API để kiểm soát xem có nên hiển thị WebView ở chế độ làm tối hay không.
Phiên bản 1.2.0-rc01
Ngày 19 tháng 2 năm 2020
androidx.webkit:webkit:1.2.0-rc01
được phát hành mà không có thay đổi nào kể từ 1.2.0-beta01
. Phiên bản 1.2.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.2.0-beta01
Ngày 5 tháng 2 năm 2020
androidx.webkit:webkit:1.2.0-beta01
được phát hành mà không có thay đổi nào kể từ 1.2.0-alpha01
. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.
Phiên bản 1.2.0-alpha01
Ngày 18 tháng 12 năm 2019
Phát hành androidx.webkit:webkit:1.2.0-alpha01
. Phiên bản 1.2.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- ForceDark API để kiểm soát xem có nên hiển thị WebView ở chế độ làm tối hay không.
Phiên bản 1.1.0
Phiên bản 1.1.0
Ngày 7 tháng 11 năm 2019
Phát hành androidx.webkit:webkit:1.1.0
. Phiên bản 1.1.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.0.0
- API phương thức Getter để bổ sung cho setWebViewClient() và setWebChromeClient().
- ProxyController API để đặt proxy yêu cầu mạng cho WebView của ứng dụng.
- WebViewAssetLoader API để đơn giản hoá việc tải các thành phần, tài nguyên và tệp của APK từ thư mục dữ liệu ứng dụng thông qua tính năng chặn yêu cầu. Điều này cho phép truy cập vào tài nguyên web và tài nguyên trên máy mà không cần tắt CORS.
- TracingController API để thu thập thông tin theo dõi WebView cho mục đích gỡ lỗi.
- RenderProcess API để quản lý các dịch vụ trình kết xuất hình ảnh WebView và phát hiện nội dung hoạt động kém hiệu quả khiến các trình kết xuất WebView không phản hồi.
- Cập nhật các API hiện tại để bao gồm các chú thích (
@NonNull
,@Nullable
) và chuỗi (@UiThread
,@WorkerThread
) có tính chất rỗng.
Phiên bản 1.1.0-rc01
Ngày 9 tháng 10 năm 2019
Phát hành androidx.webkit:webkit:1.1.0-rc01
. Phiên bản 1.1.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi trong đó
setWebViewRenderProcessClient()
có thể gặp sự cố nếu chuyển máy khách rỗng.
Phiên bản 1.1.0-beta01
Ngày 5 tháng 9 năm 2019
Phát hành androidx.webkit:webkit:1.1.0-beta01
. Bạn có thể xem các thay đổi trong phiên bản này tại đây.
Tính năng mới
InternalStoragePathHandler
mới trongWebViewAssetLoader
để tải tệp từ thư mục dữ liệu của ứng dụng.
Thay đổi về API
- Giờ đây,
ProxyConfig#getProxyRules()
trả về danh sách các phiên bảnProxyRule
không thể sửa đổi. Lớp này là một lớp mới có chứa bộ lọc giao thức và URL proxy tương ứng.
Sửa lỗi
WebViewAssetLoader
mặc định là loại MIME "text/plain" (thay vì rỗng) khi không thể dự đoán loại MIME từ đường dẫn tệp.WebViewAssetLoader
không còn gửiNullPointerException
khi tải các tệp có các ký tự đặc biệt trong tên đường dẫn nữa.
Phiên bản 1.1.0-alpha02
Ngày 7 tháng 8 năm 2019
Phát hành androidx.webkit:webkit:1.1.0-alpha02
. Bạn có thể xem các thay đổi trong phiên bản này tại đây.
Tính năng mới
WebViewAssetLoader
hiển thị giao diệnPathHandler
để cho phép các ứng dụng tạo chức năng xử lý đường dẫn tuỳ chỉnh.
Thay đổi về API
- Giờ đây,
WebViewAssetLoader
là lớp cuối cùng vì lớp này không được phân lớp con. - Các nội dung triển khai
WebViewAssetLoader#PathHandler
giờ được công khai và là cuối cùng. - Các thay đổi nhỏ đối với tên phương thức ProxyConfig.
ProxyController
: đã thêm các phương thức mớiaddDirect()
vàaddDirect(String)
để kết nối trực tiếp với máy chủ; đã xoá chuỗi DIRECT.- Cập nhật các API hiện tại để bao gồm các chú thích (
@NonNull
,@Nullable
) và chuỗi (@UiThread
,@WorkerThread
) có tính chất rỗng.
Phiên bản 1.1.0-alpha01
Ngày 7 tháng 5 năm 2019
Phát hành androidx.webkit:webkit:1.1.0-alpha01
. Bạn có thể xem các thay đổi trong phiên bản này tại đây.
Tính năng mới
- Các API phương thức Getter bổ sung cho
setWebViewClient()
vàsetWebChromeClient()
- ProxyController API để đặt proxy yêu cầu mạng cho WebView của ứng dụng.
- AssetLoader API để đơn giản hoá việc tải các thành phần và tài nguyên của APK thông qua tính năng chặn yêu cầu, cho phép truy cập vào các tài nguyên web mà không cần tắt CORS.
- TracingController API để thu thập thông tin theo dõi WebView cho mục đích gỡ lỗi.
- RenderProcess API để quản lý các dịch vụ trình kết xuất hình ảnh WebView và phát hiện nội dung hoạt động kém hiệu quả khiến các trình kết xuất WebView không phản hồi.
Sửa lỗi
- Các bản sửa lỗi nhỏ về định dạng tài liệu cho API hiện tại.