Webkit

Hoạt động với API WebView hiện đại trên Android 5 trở lên.
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 2 tháng 7 năm 2025 1.14.0 - - 1.15.0-alpha01

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.14.0"
}

Kotlin

dependencies {
    implementation("androidx.webkit:webkit:1.14.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.

Báo lỗi mới

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

Phiên bản 1.15.0-alpha01

Ngày 2 tháng 7 năm 2025

Phát hành androidx.webkit:webkit:1.15.0-alpha01. Phiên bản 1.15.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Một API mới để đặt các cặp tên-giá trị tiêu đề HTTP cho các yêu cầu đến các nguồn gốc cụ thể.
    Phương thức Profile.setOriginMatchedHeader cho phép ứng dụng chỉ định rằng tên và giá trị tiêu đề phải được đặt trên tất cả các yêu cầu HTTP/HTTPS đến các nguồn gốc khớp với danh sách cho phép được cung cấp khi được gửi từ WebView và các worker dịch vụ sử dụng Hồ sơ đã cho. API này chỉ cho phép một mối liên kết cho mỗi tên tiêu đề và sẽ gửi một ngoại lệ nếu tên tiêu đề đã được đặt.
    Sử dụng Profile.clearOriginMatchedHeader để xoá một mối liên kết hiện có và Profile.clearAllOriginMatchedHeaders để xoá tất cả các mối liên kết. (Ida7f1, b/419469873)
  • Một API mới để truy cập và đặt cookie trong các lệnh gọi lại shouldInterceptRequest cho WebView và Service Worker.
    Giờ đây, những nhà phát triển ứng dụng hiện đang truy cập vào API CookieManager trong shouldInterceptRequest có thể bật trực tiếp tiêu đề cookie bằng cách gọi setIncludeCookiesOnShouldInterceptRequest. Sau đó, thao tác này sẽ khiến WebView thêm tiêu đề Cookie vào bản đồ WebResourceRequest.getRequestHeaders(). Đây sẽ là những cookie chính xác áp dụng cho yêu cầu. Thao tác này cũng sẽ xử lý chính xác mọi cookie được phân vùng.
    Ứng dụng có thể cung cấp các giá trị tiêu đề Set-Cookie thông qua API WebResourceResponseCompat.setCookies mới được thêm. Các giá trị Set-Cookie được thêm vào đó sẽ được WebView xử lý trong quá trình xử lý phản hồi. (Idbfd1, b/414769380)
  • Một API thử nghiệm mới để khởi động quy trình kết xuất cho một Profile.
    Các ứng dụng có vòng đời WebView phức tạp có thể sử dụng API này để đảm bảo rằng quy trình trình kết xuất đang chạy, ngay cả khi tất cả các phiên bản WebView đã bị huỷ. (Ia8fc8)

Thay đổi về API

  • Thêm một phương thức mới vào giao diện Navigation thử nghiệm để cung cấp URL của hoạt động điều hướng. (I1c6c0)
  • Cập nhật tên tính năng Tìm nạp trước hồ sơ để làm rõ rằng giờ đây, bạn có thể gọi API Tìm nạp trước trên một luồng nền. (I7c83a)

Phiên bản 1.14

Phiên bản 1.14.0

Ngày 4 tháng 6 năm 2025

Phát hành androidx.webkit:webkit:1.14.0. Phiên bản 1.14.0 bao gồm các thay đổi sau.

Các thay đổi quan trọng kể từ phiên bản 1.13.0

  • Ra mắt API PaymentRequest để gọi các ứng dụng thanh toán gốc của Android thông qua ý định org.chromium.intent.action.PAY. PaymentRequest bị tắt theo mặc định và các ứng dụng lưu trữ WebView có thể gọi WebSettingsCompat.setPaymentRequestEnabled(settings, true) để bật tính năng này. Ngoài ra, PaymentRequest yêu cầu thẻ <queries> trong AndroidManifest.xml. Hãy xem tài liệu về setPaymentRequestEnabled() để biết thêm thông tin.
  • Giới thiệu Navigation API thử nghiệm để cải thiện việc theo dõi và quản lý hoạt động điều hướng trên web trong WebView. Các API này cung cấp thông tin chi tiết về các sự kiện điều hướng. Bắt đầu bằng cách gọi WebViewCompat.setNavigationClient với một cách triển khai giao diện WebNaviagationClient mới để nhận thông tin chi tiết về hoạt động điều hướng trang. Để biết thêm thông tin về vòng đời điều hướng, vui lòng xem bài viết Vòng đời của một bản trình bày điều hướng.

Phiên bản 1.14.0-rc01

Ngày 20 tháng 5 năm 2025

Phát hành androidx.webkit:webkit:1.14.0-rc01. Phiên bản 1.14.0-rc01 bao gồm các thay đổi sau.

  • Không có thay đổi nào so với 1.14.0-beta01.

Phiên bản 1.14.0-beta01

Ngày 7 tháng 5 năm 2025

Phát hành androidx.webkit:webkit:1.14.0-beta01. Phiên bản 1.14.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

Phiên bản 1.14.0-alpha01

Ngày 9 tháng 4 năm 2025

Phát hành androidx.webkit:webkit:1.14.0-alpha01. Phiên bản 1.14.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Ra mắt API PaymentRequest để gọi các ứng dụng thanh toán gốc của Android thông qua ý định org.chromium.intent.action.PAY. PaymentRequest bị tắt theo mặc định và các ứng dụng lưu trữ WebView có thể gọi WebSettingsCompat.setPaymentRequestEnabled(settings, true) để bật. Ngoài ra, PaymentRequest yêu cầu thẻ <queries> trong AndroidManifest.xml. Hãy xem tài liệu về setPaymentRequestEnabled() để biết thêm thông tin. (I3304e, b/404920055)
  • Giới thiệu về lệnh gọi lại điều hướng thử nghiệm. Bản phát hành này giới thiệu các API thử nghiệm để cải thiện khả năng theo dõi và quản lý hoạt động điều hướng trên web trong WebView. Các API này cung cấp thông tin chi tiết về các sự kiện điều hướng. Các tính năng chính:
    • Giao diện WebNavigationClient: Giới thiệu một giao diện mới, WebNavigationClient, với các lệnh gọi lại cho sự kiện điều hướng:
    • onNavigationStarted(Navigation navigation): Thông báo khi một hoạt động điều hướng bắt đầu.
    • onNavigationRedirected(Navigation navigation): Thông báo khi một thao tác điều hướng được chuyển hướng.
    • onNavigationCompleted(Navigation navigation): Thông báo khi quá trình điều hướng hoàn tất.
    • Navigation Giao diện: Cung cấp thông tin chi tiết về một hoạt động điều hướng, bao gồm: URL, trạng thái khởi tạo trang, trạng thái cùng tài liệu, trạng thái tải lại, trạng thái nhật ký, trạng thái quay lại/chuyển tiếp, trạng thái xác nhận, trạng thái trang lỗi, mã trạng thái và trạng thái khôi phục phiên. Đối tượng Navigation đóng vai trò là giá trị nhận dạng duy nhất cho mỗi thao tác điều hướng, cho phép nhà phát triển tương quan các sự kiện điều hướng có liên quan.
    • Lớp Page: Giới thiệu lớp Page, đóng vai trò là khoá cho dữ liệu được liên kết với trang. (I351a6)
  • Ra mắt một API thử nghiệm mới để bật/tắt hành vi của các đối tượng nhà cung cấp dịch vụ lưu vào bộ nhớ đệm. (I14636)

Thay đổi về API

  • Cập nhật giá trị của tính năng PROFILE_URL_PREFETCH trong WebViewFeature. (I606fd)
  • Thêm WebViewCompat#saveState, tương tự như WebView#saveState, nhưng cho phép hạn chế kích thước của trạng thái được trả về và quyết định có lưu các mục trong nhật ký chuyển tiếp hay không. (Iea7d6)
  • Thêm cấu hình maxPrerenders vào API SpeculativeLoadingConfig (I67245)

Phiên bản 1.13

Phiên bản 1.13.0

Ngày 12 tháng 3 năm 2025

Phát hành androidx.webkit:webkit:1.13.0. Phiên bản 1.13.0 bao gồm các thay đổi sau.

Các thay đổi quan trọng kể từ phiên bản 1.12.0

  • Ra mắt một API thử nghiệm mới để kết xuất trước URL, cho phép nhà phát triển kết xuất trước một cách suy đoán các URL đề xuất, từ đó giúp điều hướng nhanh hơn. (I0cfe7)
  • Giới thiệu một nhóm API mới để xoá dữ liệu duyệt web do WebView lưu trữ. Bạn nên ưu tiên dùng các API mới trong WebStorageCompat hơn các API hiện có trong android.webkit.WebStorage, vì các API mới sẽ đảm bảo xoá tất cả bộ nhớ cục bộ, bao gồm cả bộ nhớ đệm và cookie của mạng, cũng như mọi trình thực thi dịch vụ đã cài đặt. Nếu các API lưu trữ mới được giới thiệu trong tương lai, thì các phương thức mới này sẽ được cập nhật để đưa chúng vào bộ nhớ đã xoá. (Iad54f, b/382273208)
  • Thêm API setPartitionedCookiesEnabled. Thao tác này sẽ cho phép nhà phát triển bật và tắt cookie được phân vùng trong WebView. (Ic506a, b/364904765)
  • Thêm API gắn thẻ ổ cắm vào WebView để tính lưu lượng truy cập mạng của WebView bằng NetworkStatsManager/TrafficStats. Tính năng này sẽ chỉ có trong WebView M133. (Ica441, b/374932688)
  • 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 Profile để cho phép nhà phát triển kích hoạt tính năng tìm nạp trước URL. Xoá dữ liệu tìm nạp trước: Thêm một API để xoá dữ liệu tìm nạp trước đang diễn ra.(I42c5c)
  • Ngừng sử dụng WebView.startSafeBrowsing. (If5626)

Phiên bản 1.13.0-rc01

Ngày 26 tháng 2 năm 2025

Phát hành androidx.webkit:webkit:1.13.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.13.0-beta01.

Phiên bản 1.13.0-beta01

Ngày 12 tháng 2 năm 2025

Phát hành androidx.webkit:webkit:1.13.0-beta01. Phiên bản 1.13.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm hậu tố Không đồng bộ vào API kết xuất trước. Đổi tên mọi Dữ liệu thành Tiêu đề trong NoVarySearch để phản ánh tên mới. (Ie91c9)
  • Thêm tham số trình thực thi vào API kết xuất trước URL. Ngoài ra, bạn cũng có thể hạn chế chỉ gọi API từ luồng giao diện người dùng. (I50520)
  • Thêm một API để định cấu hình cấu hình bộ nhớ đệm cho các yêu cầu tìm nạp trước hồ sơ. Điều này cũng áp dụng cho các yêu cầu Kết xuất trước được bắt đầu từ WebViews liên kết với Hồ sơ này. (Iebb6e)

Sửa lỗi

  • Thay đổi hành vi của URLUtilCompat.guessFileName để chỉ sử dụng tham số mimeType nhằm đề xuất một phần mở rộng cho tên tệp bắt nguồn từ tham số URL. (I53ecd, b/382864232)

Phiên bản 1.13.0-alpha03

Ngày 15 tháng 1 năm 2025

Phát hành androidx.webkit:webkit:1.13.0-alpha03. Phiên bản 1.13.0-alpha03 bao gồm các thay đổi sau.

Tính năng mới

  • Ra mắt một API thử nghiệm mới để kết xuất trước URL, cho phép nhà phát triển kết xuất trước một cách suy đoán các URL đề xuất, từ đó giúp điều hướng nhanh hơn. (I0cfe7)
  • Giới thiệu một nhóm API mới để xoá dữ liệu duyệt web do WebView lưu trữ. Bạn nên ưu tiên dùng các API mới trong WebStorageCompat hơn các API hiện có trong android.webkit.WebStorage, vì các API mới sẽ đảm bảo xoá tất cả bộ nhớ cục bộ, bao gồm cả bộ nhớ đệm và cookie của mạng, cũng như mọi trình thực thi dịch vụ đã cài đặt. Nếu các API lưu trữ mới được giới thiệu trong tương lai, thì các phương thức mới này sẽ được cập nhật để đưa chúng vào bộ nhớ đã xoá. (Iad54f, b/382273208)
  • Thêm API setPartitionedCookiesEnabled. Thao tác này sẽ cho phép nhà phát triển bật và tắt cookie được phân vùng trong WebView. (Ic506a, b/364904765)

Thay đổi về API

  • Thay đổi yêu cầu về luồng cho Prefetch API để chỉ được gọi trên luồng giao diện người dùng. (I866b5)
  • Cập nhật các phương thức WebAuthn để làm nổi bật rằng các phương thức này phải được gọi trên luồng giao diện người dùng. Yêu cầu này đã được thực thi bằng cách triển khai và thay đổi này chỉ thêm chú thích có liên quan. (I6d6ba)

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ủa WebView bằng NetworkStatsManager/TrafficStats. Tính năng này sẽ chỉ có trong WebView M133. (Ica441, b/374932688)

Thay đổi về API

  • Cập nhật Prefetch API bằng cách đổi tên PrefetchParameter thành SpeculativeLoadingParamaters, giới thiệu PrefetchNetworkException mới, thay thế PrefetchOperationCallback bằng OutcomeReceiverCompat 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 cho các ứng dụng một lựa chọn chỉ kích hoạt lệnh init mà 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ề giá trị rỗng JSpecify, là loại sử dụng. Nhà phát triển Kotlin nên sử dụng đối số trình biên dịch sau đây để thực thi việc sử dụng chính xác: -Xjspecify-annotations=strict (đây là đối số mặc định bắt đầu từ phiên bản 2.1.0 của trình biên dịch Kotlin). (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á tìm nạp trước: Thêm một API để xoá các hoạt động 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 các 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 cho WebSettings 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 suy đoán cho WebSettings này. Hiện tại, chỉ có 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 Xác thực trên web trong WebView. Nhà phát triển có thể bật/tắt các lệnh gọi WebAuthn trong WebView cho ứng dụng của họ bằng cách sử dụng WebSettingsCompat#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á quy trình vạch ra thủ công quyền truy cập vào các API nền tảng mới vì quy trình này diễn ra tự động thông qua việc 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 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ắt BackForwardCache. 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 suy đoán cho WebSettings này. Hiện tại, chỉ có 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)
  • Giờ đây, các phương thức an toàn theo luồng đượ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 để cho phép Xác thực web trong WebView. Developers có thể bật/tắt các lệnh gọi WebAuthn trong WebView cho các ứng dụng của họ bằng WebSettingsCompat#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.

Những thay đổi quan trọng kể từ phiên bản 1.10.0

  • Cho phép các ứng dụng kiểm soát việc phát âm thanh trong WebView thông qua các API setAudioMutedisAudioMuted mới. Các API này tương tự như việc tắt tiếng một thẻ trong Chrome.
  • Giới thiệu URLUtilCompat, hỗ trợ việc 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* theo quy đị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 khi bạn không muốn có tên tệp được đề xuất dựa trên URL và loại MIME.

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

androidx.webkit:webkit:1.11.0-beta01 được phát hành 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 phương thức setAudioMutedisAudioMuted để tắt tiếng (và bật tiếng) WebViews. Phương thức này sẽ giúp bạn ngăn WebView phát âm thanh. (Ie7a33)

Thay đổi về API

  • URLUtilCompat được tạo thành lớp cuối cùng vì lớp này 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 trong URLUtilCompat hỗ trợ việc 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 khi bạn không muốn có tên tệp được đề xuất dựa trên URL và loại MIME. (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

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 nào về chức năng so với phiên bản 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 của API Tính toàn vẹn của nội dung nghe nhìn trong Android WebView 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 của 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à theo 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 mới có nhiều hồ sơ 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, CookieManagerWebStorage. 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ơ trong ứng dụng.
    • Bạn có thể thay đổi hồ sơ mà một 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ó trong ứng dụng, bao gồm cả hồ sơ mặc định.
    • Các API WebView hiện có, chẳng hạn 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 các ứng dụng chèn tập lệnh vào một WebView. Các tập lệnh này chắc chắn sẽ chạy trước khi bất kỳ tập lệnh trang nào được thực thi. API này cho phép ứng dụng chỉ định một danh sách đích 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 chúng 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.
  • Đã thêm các 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. API này cho phép nhà phát triển định cấu hình liệu các nguồn phân bổ và điều kiện kích hoạt có được đăng ký là đến từ chính ứng dụng hay đến từ nội dung web trong WebView hay không. Bạn cũng có thể dùng phương thức này để tắt Attribution Reporting trong WebView. Ngoài ra, chúng tôi đã thêm một API WebSettingsCompat#getAttributionRegistrationBehavior mới để lấy 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ư.
  • Thêm các API để ghi đè siêu dữ liệu của ứng dụng tác nhân người dùng cho thông tin mô tả của ứng dụng.
    • Chúng tôi đã giới thiệu một API mới, WebSettingsCompat#setUserAgentMetadata để ghi đè siêu dữ liệu về tác nhân người dùng cho WebView dùng để điền các gợi ý về ứng dụng tác nhân người dùng, đồng thời chúng tôi cũng đã thêm một API mới khác là WebSettingsCompat#getUserAgentMetadata để nhận các giá trị ghi đè hiện tại của tác nhân người dùng. Các ứng dụng nên sử dụng API mới để đặt các 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 WebSettings.setUserAgentString để đảm bảo các giá trị chính xác đượ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ề khả năng rỗng của API siêu dữ liệu user-agent. Chúng tôi cập nhật lớp BrandVersion để sử dụng mẫu trình tạo, giúp các phương thức truy xuất và phương thức thiết lập của lớp UserAgentMetadata nhất quán về khả năng rỗng. (Ibf195)
  • Chú giải ProfileStore, WebViewCompat#setProfileWebViewCompat.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 hồ sơ sau này để truy cập vào mọi dữ liệu. Có một lớp singleton ProfileStore giúp bạn quản lý hồ sơ bằng cách tạo hoặc xoá bằng API; getOrCreateProfile, getProfile, getAllProfileNamesdeleteProfile. Lớp Profile 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, CookieManagerWebStorage. Theo mặc định, mỗi WebView 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ụng WebViewCompat#setProfile. Liên quan đến vấn đề này, bạn có thể truy xuất hồ sơ của WebView bằng cách sử dụng WebViewCompat#getProfile. (I32d22)
  • Thêm các API để sửa đổi cách đăng ký sự kiện Báo cáo phân bổ. Chúng tôi đã giới thiệu 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 có được đăng ký là đến từ chính ứng dụng hay đến từ nội dung trên web trong WebView hay không. Bạn cũng có thể dùng phương thức này để tắt Attribution Reporting trong WebView. Ngoài ra, chúng tôi đã thêm một API WebSettingsCompat#getAttributionRegistrationBehavior mới để lấy 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 các API để ghi đè siêu dữ liệu 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 tác nhân người dùng cho WebView. API này được dùng để điền thông tin mô tả của ứ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 để nhận các chế độ 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 các giá trị ghi đè phù hợp 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. Tập lệnh này sẽ chạy trước khi bất kỳ tập lệnh trang nào được thực thi. API này cho phép ứng dụng chỉ định một danh sách đích 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 tập lệnh trong Iframe được nhúng khi chúng 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

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 phần Đó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 qua WebMessagePortCompat#postMessage, JsReplyProxy#postMessageWebViewCompat#postWebMessage, nhận ArrayBuffer từ JavaScript qua WebMessagePortCompatWebMessageListener, đồng thời nhận ArrayBuffer có thể chuyển nhượng từ JavaScript qua WebMessagePortCompat. Xin lưu ý rằng API này sẽ chỉ có trong WebView 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 đã thêm tính năng hỗ trợ cho 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ỏi WebView bằng cách thêm DropDataContentProvider 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). API này có thể dùng để đặt các thư mục cơ sở mà WebView sẽ dùng cho quy trình hiện tại. Giống như mọi phương thức trên ProcessGlobalConfig, phương thức này phải được gọi trước khi phiên bản đầu tiên của WebView được tạo thực thể. Phương thức này được thêm vào để cung cấp cho khung Android khả năng điều chỉnh các chế độ cài đặt WebView. Đối với các ứng dụng đa năng, 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 đặt 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ẽ 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ụng DexGuard (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ỏi WebView bằng cách thêm DropDataContentProvider 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ó trong CookieManager.
  • WebSettingsCompat có các phương thức mới để bật/tắt hiệu ứng của EnterpriseAuthenticationAppLinkPolicy nếu quản trị viên đặt trong WebView 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ủa WebView.

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 trong WebViewFeature.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ửi IllegalStateException nếu được gọi nhiều lần. Các đối tượng ProcessGlobalConfig 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ải WebView. 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ải WebView (ví dụ: thư mục dữ liệu WebView). 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ải WebView 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ủa WebView 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 API getCookieInfo 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 API getCookie (chỉ trả về các thuộc tính tên và giá trị của cookie) hiện có trong CookieManager. (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ủa EnterpriseAuthenticationAppLinkPolicy nếu quản trị viên đặt trong WebView. 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ý.

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ên WebSettingsCompat sẽ thay thế các API setForceDarksetForceDarkStrategy 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 đặt setReverseBypassEnabled thành true. 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ên WebViewCompat để nhận giá trị tiêu đề X-Client-Data do WebView 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ận Set<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ố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.

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()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 trong WebViewAssetLoader để 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ản ProxyRule 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ửi NullPointerException 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ện PathHandler để 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ới addDirect()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()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.