Webkit
อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | เวอร์ชันอัลฟ่า |
---|---|---|---|---|
7 พฤษภาคม 2025 | 1.13.0 | - | 1.14.0-beta01 | - |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ของ Webkit คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับแอปหรือโมดูล
ดึงดูด
dependencies { implementation "androidx.webkit:webkit:1.13.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.13.0") }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพิงบิวด์
ความคิดเห็น
ความคิดเห็นของคุณช่วยปรับปรุง Jetpack ได้ โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมีแนวคิดในการปรับปรุงคลังนี้ โปรดดูปัญหาที่มีอยู่ในคลังนี้ก่อนสร้างปัญหาใหม่ คุณสามารถเพิ่มการโหวตให้กับปัญหาที่มีอยู่ได้โดยคลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของเครื่องมือติดตามปัญหา
เวอร์ชัน 1.14
เวอร์ชัน 1.14.0-beta01
7 พฤษภาคม 2025
androidx.webkit:webkit:1.14.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.14.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มบริบทเป็นพารามิเตอร์ใน
startUpWebView()
API (Ic29cd, b/406701301)
เวอร์ชัน 1.14.0-alpha01
9 เมษายน 2025
androidx.webkit:webkit:1.14.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.14.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ขอแนะนำ
PaymentRequest
API สำหรับเรียกใช้แอปการชำระเงินบนอุปกรณ์ Android โดยตรงผ่าน Intentorg.chromium.intent.action.PAY
PaymentRequest
จะปิดอยู่โดยค่าเริ่มต้น และแอปโฮสต์ WebView สามารถเรียกใช้WebSettingsCompat.setPaymentRequestEnabled(settings, true)
เพื่อเปิดใช้ได้ นอกจากนี้PaymentRequest
ต้องมีแท็ก<queries>
ในAndroidManifest.xml
ดูข้อมูลเพิ่มเติมในเอกสารประกอบของsetPaymentRequestEnabled()
(I3304e, b/404920055) - ขอแนะนําการเรียกกลับการนําทางเวอร์ชันทดลอง รุ่นนี้เปิดตัว API ทดลองสําหรับการติดตามและการจัดการการไปยังส่วนต่างๆ ของเว็บที่มีประสิทธิภาพมากขึ้นภายใน
WebView
API เหล่านี้ให้ข้อมูลโดยละเอียดเกี่ยวกับเหตุการณ์การนําทาง ฟีเจอร์หลักWebNavigationClient
อินเทอร์เฟซ: เปิดตัวอินเทอร์เฟซใหม่WebNavigationClient
ที่มีคอลแบ็กสําหรับเหตุการณ์การนําทาง ดังนี้onNavigationStarted(Navigation navigation)
: แจ้งเตือนเมื่อการนําทางเริ่มต้นonNavigationRedirected(Navigation navigation)
: แจ้งเตือนเมื่อเปลี่ยนเส้นทางการนําทางonNavigationCompleted(Navigation navigation)
: แจ้งเตือนเมื่อการนำทางเสร็จสมบูรณ์Navigation
อินเทอร์เฟซ: ให้ข้อมูลโดยละเอียดเกี่ยวกับการนําทาง ซึ่งรวมถึง URL, สถานะการเริ่มต้นหน้าเว็บ, สถานะเอกสารเดียวกัน, สถานะการโหลดซ้ำ, สถานะประวัติ, สถานะย้อนกลับ/ไปข้างหน้า, สถานะการคอมมิต, สถานะหน้าข้อผิดพลาด, รหัสสถานะ และสถานะการกู้คืนเซสชัน ออบเจ็กต์Navigation
เป็นตัวระบุที่ไม่ซ้ำกันสำหรับการนําทางแต่ละครั้ง ซึ่งช่วยให้นักพัฒนาแอปเชื่อมโยงเหตุการณ์การนําทางที่เกี่ยวข้องได้- คลาส
Page
: แนะนำคลาสPage
ซึ่งทำหน้าที่เป็นคีย์สำหรับข้อมูลที่เชื่อมโยงกับหน้าเว็บ (I351a6)
- เปิดตัว API เวอร์ชันทดลองใหม่เพื่อสลับลักษณะการทํางานของออบเจ็กต์ผู้ให้บริการแคช (I14636)
การเปลี่ยนแปลง API
- อัปเดตค่าฟีเจอร์
PROFILE_URL_PREFETCH
ในWebViewFeature
(I606fd) - เพิ่ม
WebViewCompat#saveState
ซึ่งคล้ายกับWebView#saveState
แต่อนุญาตให้จํากัดขนาดของสถานะที่แสดงผลและตัดสินใจว่าจะบันทึกรายการประวัติการเดินหน้าหรือไม่ (Iea7d6) - เพิ่มการกําหนดค่า
maxPrerenders
ไปยังSpeculativeLoadingConfig
API (I67245)
เวอร์ชัน 1.13
เวอร์ชัน 1.13.0
12 มีนาคม 2025
androidx.webkit:webkit:1.13.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.13.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.12.0
- เปิดตัว API เวอร์ชันทดลองใหม่สำหรับการแสดงผล URL ล่วงหน้าเพื่อให้นักพัฒนาซอฟต์แวร์แสดงผล URL ที่เป็นไปได้ล่วงหน้า ซึ่งจะทำให้การไปยังส่วนต่างๆ เร็วขึ้น (I0cfe7)
- ขอแนะนําชุด API ใหม่สําหรับลบข้อมูลการท่องเว็บที่
WebView
จัดเก็บไว้ คุณควรใช้ API ใหม่ในWebStorageCompat
แทน API ที่มีอยู่เดิมในandroid.webkit.WebStorage
เนื่องจาก API ใหม่จะรับประกันการลบพื้นที่เก็บข้อมูลในเครื่องทั้งหมด ซึ่งรวมถึงแคชเครือข่ายและคุกกี้ รวมถึง Service Worker ที่ติดตั้งไว้ หากมีการเปิดตัว Storage API ใหม่ในอนาคต ระบบจะอัปเดตวิธีการใหม่เหล่านี้ให้รวมอยู่ในพื้นที่เก็บข้อมูลที่ลบ (Iad54f, b/382273208) - เพิ่ม
setPartitionedCookiesEnabled
API ซึ่งจะช่วยให้นักพัฒนาแอปเปิดและปิดใช้คุกกี้ที่มีการแบ่งพาร์ติชันในWebView
ได้ (Ic506a, b/364904765) - เพิ่ม API การติดแท็กซ็อกเก็ตลงใน
WebView
เพื่อบันทึกการรับส่งข้อมูลเครือข่ายของWebView
โดยใช้NetworkStatsManager
/TrafficStats
ฟีเจอร์นี้จะพร้อมใช้งานในWebView
M133 เท่านั้น (Ica441, b/374932688) - เพิ่ม
WebView
Async Startup API เวอร์ชันทดลอง (I94b8a) - การเรียกข้อมูล URL ล่วงหน้าในโปรไฟล์: เปิดตัว API ใหม่ใน
Profile
เพื่ออนุญาตให้นักพัฒนาแอปเรียกใช้การเรียกข้อมูล URL ล่วงหน้า การล้างการดึงข้อมูลล่วงหน้า: เพิ่ม API เพื่อล้างการดึงข้อมูลล่วงหน้าที่ดำเนินอยู่ (I42c5c) - เลิกใช้งาน
WebView.startSafeBrowsing
(If5626)
เวอร์ชัน 1.13.0-rc01
26 กุมภาพันธ์ 2025
androidx.webkit:webkit:1.13.0-rc01
ได้รับการปล่อยแล้ว รุ่นนี้ไม่มีการเปลี่ยนแปลงจาก1.13.0-beta01
รุ่น
เวอร์ชัน 1.13.0-beta01
12 กุมภาพันธ์ 2025
androidx.webkit:webkit:1.13.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.13.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มส่วนต่อท้าย Async ไปยัง API ที่จะแสดงผลล่วงหน้า เปลี่ยนชื่อ "ข้อมูลไปยังส่วนหัว" ใน
NoVarySearch
ให้สอดคล้องกับชื่อใหม่ (Ie91c9) - เพิ่มพารามิเตอร์ผู้ดำเนินการลงใน API การแสดงผลหน้าเว็บล่วงหน้าของ URL รวมถึงการจํากัดให้เรียก API ได้จากเธรด UI เท่านั้น (I50520)
- เพิ่ม API เพื่อกําหนดค่าแคชสําหรับคําขอการอ่านล่วงหน้าของโปรไฟล์ รวมถึงมีผลกับคำขอแสดงผลล่วงหน้าที่เริ่มต้นจาก
WebViews
ที่เชื่อมโยงกับโปรไฟล์นี้ด้วย (Iebb6e)
การแก้ไขข้อบกพร่อง
- เปลี่ยนลักษณะการทํางานของ
URLUtilCompat.guessFileName
ให้ใช้เฉพาะพารามิเตอร์mimeType
เพื่อแนะนํานามสกุลสําหรับชื่อไฟล์ที่มาจากพารามิเตอร์ของ URL (I53ecd, b/382864232)
เวอร์ชัน 1.13.0-alpha03
15 มกราคม 2025
androidx.webkit:webkit:1.13.0-alpha03
ได้รับการปล่อยแล้ว เวอร์ชัน 1.13.0-alpha03 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัว API เวอร์ชันทดลองใหม่สำหรับการแสดงผล URL ล่วงหน้าเพื่อให้นักพัฒนาซอฟต์แวร์แสดงผล URL ที่เป็นไปได้ล่วงหน้า ซึ่งจะทำให้การไปยังส่วนต่างๆ เร็วขึ้น (I0cfe7)
- ขอแนะนําชุด API ใหม่สําหรับลบข้อมูลการท่องเว็บที่
WebView
จัดเก็บไว้ คุณควรใช้ API ใหม่ในWebStorageCompat
แทน API ที่มีอยู่เดิมในandroid.webkit.WebStorage
เนื่องจาก API ใหม่จะรับประกันการลบพื้นที่เก็บข้อมูลในเครื่องทั้งหมด ซึ่งรวมถึงแคชเครือข่ายและคุกกี้ รวมถึง Service Worker ที่ติดตั้งไว้ หากมีการเปิดตัว Storage API ใหม่ในอนาคต ระบบจะอัปเดตวิธีการใหม่เหล่านี้ให้รวมอยู่ในพื้นที่เก็บข้อมูลที่ลบ (Iad54f, b/382273208) - เพิ่ม
setPartitionedCookiesEnabled
API ซึ่งจะช่วยให้นักพัฒนาแอปเปิดและปิดใช้คุกกี้ที่มีการแบ่งพาร์ติชันในWebView
ได้ (Ic506a, b/364904765)
การเปลี่ยนแปลง API
- เปลี่ยนข้อกำหนดของเธรดสำหรับ Prefetch API ให้เรียกใช้เฉพาะในเธรด UI (I866b5)
- อัปเดตเมธอด
WebAuthn
เพื่อไฮไลต์ว่าต้องเรียกใช้บนเธรด UI การติดตั้งใช้งานบังคับใช้ข้อกําหนดนี้อยู่แล้ว และการเปลี่ยนแปลงนี้เป็นเพียงการเพิ่มคําอธิบายประกอบที่เกี่ยวข้องเท่านั้น (I6d6ba)
เวอร์ชัน 1.13.0-alpha02
11 ธันวาคม 2024
androidx.webkit:webkit:1.13.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.13.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API การติดแท็กซ็อกเก็ตลงใน
WebView
เพื่อบันทึกการรับส่งข้อมูลเครือข่ายของWebView
โดยใช้NetworkStatsManager
/TrafficStats
ฟีเจอร์นี้จะพร้อมใช้งานในWebView
M133 เท่านั้น (Ica441, b/374932688)
การเปลี่ยนแปลง API
- อัปเดต Prefetch API โดยเปลี่ยนชื่อ
PrefetchParameter
เป็นSpeculativeLoadingParamaters
เปิดตัวPrefetchNetworkException
ใหม่ แทนที่PrefetchOperationCallback
ด้วยOutcomeReceiverCompat
และอัปเดต Javadoc (If5072) - รับข้อมูลการวินิจฉัยจาก WebView Async Startup API
- ระบุตัวเลือกให้แอปทริกเกอร์ init ที่ไม่บล็อกเธรด UI เท่านั้น (I9bf2b)
การแก้ไขข้อบกพร่อง
- ตอนนี้ไลบรารีนี้ใช้แอตทริบิวต์ JSpecify nullness ซึ่งเป็นการใช้ประเภท นักพัฒนาซอฟต์แวร์ Kotlin ควรใช้อาร์กิวเมนต์คอมไพเลอร์ต่อไปนี้เพื่อบังคับใช้การใช้งานที่ถูกต้อง
-Xjspecify-annotations=strict
(นี่เป็นค่าเริ่มต้นที่เริ่มตั้งแต่คอมไพเลอร์ Kotlin เวอร์ชัน 2.1.0) (I0e4c5, b/326456246)
เวอร์ชัน 1.13.0-alpha01
13 พฤศจิกายน 2024
androidx.webkit:webkit:1.13.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.13.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม
WebView
Async Startup API เวอร์ชันทดลอง (I94b8a) - การเรียกข้อมูล URL ล่วงหน้าในโปรไฟล์: เปิดตัว API ใหม่ในโปรไฟล์เพื่อให้นักพัฒนาแอปเรียกใช้การเรียกข้อมูล URL ล่วงหน้าได้ การล้างข้อมูลการเรียกข้อมูลล่วงหน้า: เพิ่ม API เพื่อล้างการเรียกข้อมูลล่วงหน้าที่ดำเนินอยู่ (I42c5c)
การเปลี่ยนแปลง API
- เลิกใช้งาน
WebView.startSafeBrowsing
(If5626)
เวอร์ชัน 1.12
เวอร์ชัน 1.12.1
2 ตุลาคม 2024
androidx.webkit:webkit:1.12.1
ได้รับการปล่อยแล้ว เวอร์ชัน 1.12.1 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ทำให้ API เวอร์ชัน 1.12.0 ไม่พร้อมใช้งานในรุ่นนี้
เวอร์ชัน 1.12.0
18 กันยายน 2024
androidx.webkit:webkit:1.12.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.12.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.11.0
- เพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อเปิด/ปิดใช้ BackForwardCache สำหรับWebSettings
นี้ API นี้อยู่ในขั้นทดลองและอาจมีการเปลี่ยนแปลงในอนาคต (aosp/3111705) - เพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อควบคุมลักษณะการโหลดโดยประมาณสําหรับWebSettings
นี้ ขณะนี้มีเพียงการแสดงผลล่วงหน้าเท่านั้น API นี้อยู่ในขั้นทดลองและอาจมีการเปลี่ยนแปลงในอนาคต (I13962) - เพิ่ม API ใหม่เพื่อเปิดใช้การตรวจสอบสิทธิ์ผ่านเว็บใน
WebView
นักพัฒนาแอปสามารถเปิด/ปิดใช้การเรียกWebAuthn
ในWebView
สําหรับแอปของตนได้โดยใช้WebSettingsCompat#setWebAuthenticationSupport
(I8187f)
เวอร์ชัน 1.12.0-rc01
4 กันยายน 2024
androidx.webkit:webkit:1.12.0-rc01
ได้รับการปล่อยแล้ว รุ่นนี้ไม่มีการเปลี่ยนแปลงจากรุ่น 1.12.0-beta01
เวอร์ชัน 1.12.0-beta01
21 สิงหาคม 2024
androidx.webkit:webkit:1.12.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.12.0-beta01 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- นำการระบุการเข้าถึง API ของแพลตฟอร์มใหม่ด้วยตนเองออกแล้ว เนื่องจากการดำเนินการนี้จะทําโดยอัตโนมัติผ่านโมเดล API เมื่อใช้ R8 กับ AGP 7.3 ขึ้นไป (เช่น R8 เวอร์ชัน 3.3) และสำหรับบิลด์ทั้งหมดเมื่อใช้ AGP 8.1 ขึ้นไป (เช่น D8 เวอร์ชัน 8.1) เราขอแนะนำให้ลูกค้าที่ไม่ได้ใช้ AGP อัปเดตเป็น D8 เวอร์ชัน 8.1 ขึ้นไป ดูบทความนี้สำหรับรายละเอียดเพิ่มเติม (Ia60e0, b/345472586)
เวอร์ชัน 1.12.0-alpha02
12 มิถุนายน 2024
androidx.webkit:webkit:1.12.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.12.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อเปิด/ปิดใช้BackForwardCache
API นี้อยู่ในขั้นทดลองและอาจมีการเปลี่ยนแปลงในอนาคต (I64a38) - เพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อควบคุมลักษณะการโหลดโดยประมาณสําหรับ WebSettings นี้ ขณะนี้มีเพียงการแสดงผลล่วงหน้าเท่านั้น API นี้อยู่ในขั้นทดลองและอาจมีการเปลี่ยนแปลงในอนาคต (I13962)
การเปลี่ยนแปลง API
- ตอนนี้เราได้ระบุวิธีการบางอย่างด้วย
@UiThread
ตามความเหมาะสมแล้ว (I6c7e0), (I44541) - ตอนนี้เมธอดที่ปลอดภัยสำหรับเธรดจะได้รับการบันทึกด้วย
@AnyThread
(I70189) - เพิ่ม
minSdkVersion
จาก 19 เป็น 21 (Id7a43)
เวอร์ชัน 1.12.0-alpha01
17 เมษายน 2024
androidx.webkit:webkit:1.12.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.12.0-alpha01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม API ใหม่เพื่อเปิดใช้การตรวจสอบสิทธิ์ผ่านเว็บใน
WebView. Developers
สามารถเปิด/ปิดการเรียกWebAuthn
ในWebView
สําหรับแอปที่ใช้WebSettingsCompat#setWebAuthenticationSupport
(I8187f)
เวอร์ชัน 1.11
เวอร์ชัน 1.11.0
1 พฤษภาคม 2024
androidx.webkit:webkit:1.11.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.11.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.10.0
- อนุญาตให้แอปควบคุมการเล่นเสียงใน
WebView
ผ่านsetAudioMuted
และisAudioMuted
API ใหม่ ซึ่งคล้ายกับการปิดเสียงแท็บใน Chrome - เปิดตัว
URLUtilCompat
ซึ่งรองรับการแยกวิเคราะห์ส่วนหัวContent-Disposition
ที่ใช้แอตทริบิวต์ค่าที่เข้ารหัสfilename*
ตามที่ระบุไว้ใน RFC 6266 นอกจากนี้ Compatibility API ยังแสดงเมธอดในการแยกวิเคราะห์ส่วนหัวContent-Disposition
โดยตรงในกรณีที่ไม่ต้องการชื่อไฟล์ที่แนะนำตาม URL และประเภท MIME
เวอร์ชัน 1.11.0-rc01
3 เมษายน 2024
androidx.webkit:webkit:1.11.0-rc01
ได้รับการปล่อยแล้ว รุ่นนี้ไม่มีการเปลี่ยนแปลงจากรุ่น 1.11.0-beta01
เวอร์ชัน 1.11.0-beta01
20 มีนาคม 2024
androidx.webkit:webkit:1.11.0-beta01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงที่สำคัญ เวอร์ชัน 1.11.0-beta01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.11.0-alpha02
21 กุมภาพันธ์ 2024
androidx.webkit:webkit:1.11.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.11.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มวิธีการ
setAudioMuted
และisAudioMuted
สำหรับการปิดเสียง (และเปิดเสียง)WebViews
วิธีนี้จะช่วยให้คุณป้องกันไม่ให้WebView
เล่นเสียงได้ (Ie7a33)
การเปลี่ยนแปลง API
URLUtilCompat
ได้รับการทำให้เป็นแบบสุดท้ายเนื่องจากไม่ควรมีคลาสย่อย (I49ec1)
เวอร์ชัน 1.11.0-alpha01
7 กุมภาพันธ์ 2024
androidx.webkit:webkit:1.11.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.11.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มความเข้ากันได้สำหรับ
URLUtil.guessFileName
เวอร์ชันที่เข้ากันได้ในURLUtilCompat
รองรับการแยกวิเคราะห์ส่วนหัวContent-Disposition
ที่ใช้แอตทริบิวต์ค่าที่เข้ารหัสfilename*
ตามที่ระบุไว้ใน RFC 6266 นอกจากนี้ Compatibility API ยังแสดงเมธอดในการแยกวิเคราะห์ส่วนหัวContent-Disposition
โดยตรงในกรณีที่ไม่ต้องการชื่อไฟล์ที่แนะนำตาม URL และประเภท MIME (If6ae7, b/309927164)
เวอร์ชัน 1.10
เวอร์ชัน 1.10.0
24 มกราคม 2024
androidx.webkit:webkit:1.10.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.10.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.9.0
- เพิ่ม API ใหม่ลงใน WebSettingsCompat เพื่อควบคุมลักษณะการทํางานของ Android WebView Media Integrity API เวอร์ชันทดลองด้วยการปิดใช้ API ทั้งหมด หรือจํากัดการแชร์ข้อมูลระบุตัวตนของแอปพลิเคชันในการตอบกลับของ API คุณสามารถสลับการตั้งค่านี้สำหรับต้นทางทั้งหมดและตามต้นทางได้
เวอร์ชัน 1.10.0-rc01
10 มกราคม 2024
androidx.webkit:webkit:1.10.0-rc01
ได้รับการปล่อยแล้ว รุ่นนี้ไม่มีการเปลี่ยนแปลงจากรุ่น 1.10.0-beta01
เวอร์ชัน 1.10.0-beta01
13 ธันวาคม 2023
androidx.webkit:webkit:1.10.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.10.0-beta01 มีการคอมมิตเหล่านี้
- ไม่มีการเปลี่ยนแปลงฟังก์ชันการทำงานจาก
1.10.0-alpha01
เวอร์ชัน 1.10.0-alpha01
29 พฤศจิกายน 2023
androidx.webkit:webkit:1.10.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.10.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อควบคุมลักษณะการทํางานของ Android WebView Media Integrity API เวอร์ชันทดลองด้วยการปิดใช้ API ทั้งหมด หรือจํากัดการแชร์ข้อมูลระบุตัวตนของแอปพลิเคชันในการตอบกลับของ API คุณสามารถสลับการตั้งค่านี้สำหรับต้นทางทั้งหมดและตามต้นทางได้
เวอร์ชัน 1.9
เวอร์ชัน 1.9.0
29 พฤศจิกายน 2023
androidx.webkit:webkit:1.9.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.9.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.8.0
- เพิ่ม API หลายโปรไฟล์ใหม่สําหรับ WebView
- อินเทอร์เฟซโปรไฟล์มี API ต่างๆ ที่ใช้เพื่อรับข้อมูลที่เชื่อมโยงกับโปรไฟล์นี้ เช่น ชื่อ GeoLocationPermissions, ServiceWorkerController, CookieManager และ WebStorage ออบเจ็กต์เหล่านี้มีไว้สำหรับโปรไฟล์โดยเฉพาะ และจะไม่มีแชร์ข้อมูลระหว่างโปรไฟล์ต่างๆ ในแอปพลิเคชัน
- คุณสามารถเปลี่ยนโปรไฟล์ที่ใช้โดยอินสแตนซ์
WebView
โดยใช้เมธอด WebViewCompat#setProfile และเรียกข้อมูลโดยใช้ WebViewCompat#getProfile - ProfileStore ที่เพิ่งเปิดตัวใหม่ช่วยให้คุณจัดการโปรไฟล์ที่ใช้ได้ในแอปพลิเคชัน รวมถึงโปรไฟล์เริ่มต้น
- WebView API ที่มีอยู่ เช่น CookieManager#getInstance จะยังคงทํางานในโปรไฟล์เริ่มต้นต่อไป
- เพิ่ม API เพื่อแทรกและเรียกใช้ JavaScript ก่อนโหลดหน้าเว็บ
- API WebViewCompat#addDocumentStartJavascript อนุญาตให้แอปแทรกสคริปต์ลงใน
WebView
ซึ่งจะรับประกันให้ทำงานก่อนสคริปต์หน้าเว็บใดๆ API นี้ช่วยให้แอประบุรายการเป้าหมายของต้นทางที่จะเปิดใช้สคริปต์ได้ เพื่อให้แน่ใจว่าสคริปต์จะทํางานในหน้าที่ต้องการเท่านั้น ซึ่งแตกต่างจาก WebView#evaluateJavascript เนื่องจาก API นี้จะอนุญาตให้เรียกใช้สคริปต์ใน Iframe ที่ฝังอยู่เมื่อโหลด แอปสามารถใช้ API ใหม่นี้ร่วมกับ WebViewCompat#addWebMessageListener เพื่อตั้งค่าการสื่อสารแบบ 2 ทางกับ JavaScript ในหน้าเว็บได้อย่างน่าเชื่อถือ
- API WebViewCompat#addDocumentStartJavascript อนุญาตให้แอปแทรกสคริปต์ลงใน
- เพิ่ม API เพื่อแก้ไขวิธีบันทึกเหตุการณ์การรายงานการระบุแหล่งที่มาของ Privacy Sandbox
- เราได้เปิดตัว API ใหม่ WebSettingsCompat#setAttributionRegistrationBehavior ซึ่งช่วยให้นักพัฒนาแอปกำหนดค่าได้ว่าจะให้ระบบลงทะเบียนแหล่งที่มาและทริกเกอร์การระบุแหล่งที่มาว่ามาจากแอปเองหรือมาจากเนื้อหาเว็บใน WebView นอกจากนี้ คุณยังใช้เมธอดนี้เพื่อปิดใช้การรายงานการระบุแหล่งที่มาใน WebView ได้ด้วย นอกจากนี้ เรายังเพิ่ม API ใหม่
WebSettingsCompat#getAttributionRegistrationBehavior
เพื่อดูลักษณะการทำงานปัจจุบัน - ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ Privacy Sandbox
- เราได้เปิดตัว API ใหม่ WebSettingsCompat#setAttributionRegistrationBehavior ซึ่งช่วยให้นักพัฒนาแอปกำหนดค่าได้ว่าจะให้ระบบลงทะเบียนแหล่งที่มาและทริกเกอร์การระบุแหล่งที่มาว่ามาจากแอปเองหรือมาจากเนื้อหาเว็บใน WebView นอกจากนี้ คุณยังใช้เมธอดนี้เพื่อปิดใช้การรายงานการระบุแหล่งที่มาใน WebView ได้ด้วย นอกจากนี้ เรายังเพิ่ม API ใหม่
- เพิ่ม API เพื่อลบล้างข้อมูลเมตา User Agent สําหรับคำแนะนำสําหรับไคลเอ็นต์
- เราได้เปิดตัว API ใหม่ WebSettingsCompat#setUserAgentMetadata เพื่อลบล้างข้อมูลเมตา User Agent สำหรับ WebView ที่ใช้ป้อนข้อมูลคำแนะนำไคลเอ็นต์ User Agent และเพิ่ม API ใหม่อีกรายการ WebSettingsCompat#getUserAgentMetadata เพื่อรับการลบล้าง User Agent ปัจจุบัน เราขอแนะนําให้แอปใช้ API ใหม่เพื่อตั้งค่าการลบล้างที่ถูกต้องทุกครั้งที่แอปเปลี่ยนสตริง User Agent เริ่มต้นโดยใช้ WebSettings.setUserAgentString เพื่อให้แน่ใจว่ามีการใช้ค่าที่ถูกต้องในทุกสถานการณ์
เวอร์ชัน 1.9.0-rc01
15 พฤศจิกายน 2023
androidx.webkit:webkit:1.9.0-rc01
ได้รับการปล่อยแล้ว รุ่นนี้ไม่มีการเปลี่ยนแปลงจากรุ่น 1.9.0-beta01
เวอร์ชัน 1.9.0-beta01
1 พฤศจิกายน 2023
androidx.webkit:webkit:1.9.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.9.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- แก้ไขปัญหา Nullability ของ API ข้อมูลเมตา User Agent เราอัปเดตคลาส
BrandVersion
ให้ใช้รูปแบบตัวสร้าง ทำให้ Get และ Set ของคลาสUserAgentMetadata
เป็นแบบ Null ได้สอดคล้องกัน (Ibf195) - กำกับเนื้อหา
ProfileStore
,WebViewCompat#setProfile
และWebViewCompat.getProfile
ด้วย@UiThread
(I499b2)
เวอร์ชัน 1.9.0-alpha01
18 ตุลาคม 2023
androidx.webkit:webkit:1.9.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.9.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่ม Multi-Profile API ซึ่งช่วยให้คุณมีเซสชันการท่องเว็บแยกกันระหว่าง
WebViews
โดยแต่ละโปรไฟล์จะมีข้อมูลของตัวเอง (เช่น คุกกี้) คุณสามารถสร้างโปรไฟล์ กำหนดให้กับอินสแตนซ์WebView
และเรียกดูโปรไฟล์ภายหลังเพื่อเข้าถึงข้อมูลได้ มีคลาสProfileStore
แบบ Singleton เพื่อช่วยคุณจัดการโปรไฟล์ด้วยการสร้างหรือลบด้วย APIgetOrCreateProfile
,getProfile
,getAllProfileNames
และdeleteProfile
คลาสProfile
จะมี API ที่แตกต่างกันเพื่อใช้รับข้อมูลที่เชื่อมโยงกับโปรไฟล์นี้ เช่น ชื่อGeoLocationPermissions
,ServiceWorkerController
,CookieManager
และWebStorage
WebView
แต่ละรายการจะทํางานด้วยโปรไฟล์เริ่มต้นโดยค่าเริ่มต้น แต่คุณเปลี่ยนได้โดยใช้WebViewCompat#setProfile
ที่เกี่ยวข้อง คุณสามารถเรียกข้อมูลโปรไฟล์ของWebView
โดยใช้WebViewCompat#getProfile
(I32d22) - เพิ่ม API เพื่อแก้ไขวิธีบันทึกเหตุการณ์การรายงานการระบุแหล่งที่มา เราได้เปิดตัว API ใหม่
WebSettingsCompat#setAttributionRegistrationBehavior
ซึ่งช่วยให้นักพัฒนาแอปกำหนดค่าได้ว่าแหล่งที่มาและทริกเกอร์จะลงทะเบียนว่ามาจากแอปเองหรือมาจากเนื้อหาเว็บในWebView
นอกจากนี้ คุณยังใช้วิธีนี้เพื่อปิดใช้การรายงานการระบุแหล่งที่มาในWebView
ได้ด้วย นอกจากนี้ เรายังเพิ่ม API ใหม่WebSettingsCompat#getAttributionRegistrationBehavior
เพื่อดูลักษณะการทำงานปัจจุบัน ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ Privacy Sandbox (I661f2) - เพิ่ม API เพื่อลบล้างข้อมูลเมตาของ User Agent เราได้เปิดตัว API ใหม่
WebSettingsCompat#setUserAgentMetadata
เพื่อลบล้างข้อมูลเมตา User Agent สําหรับ WebView ซึ่งใช้ในการสร้างคําแนะนําสําหรับไคลเอ็นต์ User Agent และเราได้เพิ่ม API ใหม่อีกรายการWebSettingsCompat#getUserAgentMetadata
เพื่อรับการลบล้าง User Agent ปัจจุบันด้วย เราขอแนะนำให้แอปใช้ API ใหม่เพื่อตั้งค่าการลบล้างค่าเดิมที่เหมาะสมแทนที่จะใช้ User Agent ที่เปลี่ยนแปลง (I74500) - เพิ่ม API เพื่อแทรก JavaScript ให้ทํางานระหว่างการโหลดหน้าเว็บ
WebViewCompat.addDocumentStartJavascript
API ช่วยให้แอปสามารถแทรกสคริปต์ลงใน WebView ซึ่งจะทำงานก่อนที่จะเรียกใช้สคริปต์หน้าเว็บ API นี้ช่วยให้แอประบุรายการเป้าหมายของต้นทางที่จะเปิดใช้สคริปต์ได้ เพื่อให้แน่ใจว่าสคริปต์จะทํางานในหน้าที่ต้องการเท่านั้น ซึ่งแตกต่างจากWebView.evaluateJavascript
เนื่องจาก API นี้จะอนุญาตให้เรียกใช้สคริปต์ใน Iframe ที่ฝังอยู่เมื่อโหลด (Ide063)
เวอร์ชัน 1.8
เวอร์ชัน 1.8.0
6 กันยายน 2023
androidx.webkit:webkit:1.8.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.8.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.7.0
- เพิ่มการรองรับการส่ง
ArrayBuffer
ผ่านWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
และWebViewCompat#postWebMessage
, การรับArrayBuffer
จาก JavaScript ผ่านWebMessagePortCompat
และWebMessageListener
และการรับArrayBuffer
ที่โอนได้จาก JavaScript ผ่านWebMessagePortCompat
(aosp/2596550, b/251152171)
เวอร์ชัน 1.8.0-rc01
9 สิงหาคม 2023
androidx.webkit:webkit:1.8.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.8.0-beta01
เวอร์ชัน 1.8.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.8.0-beta01
26 กรกฎาคม 2023
androidx.webkit:webkit:1.8.0-beta01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.8.0-alpha01
เวอร์ชัน 1.8.0-beta01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.8.0-alpha01
7 มิถุนายน 2023
androidx.webkit:webkit:1.8.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.8.0-alpha01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ดูที่ส่วนการมีส่วนร่วมภายนอก
การมีส่วนร่วมจากภายนอก
- เพิ่มการรองรับการส่ง
ArrayBuffer
ผ่านWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
และWebViewCompat#postWebMessage
, การรับArrayBuffer
จาก JavaScript ผ่านWebMessagePortCompat
และWebMessageListener
และการรับArrayBuffer
ที่โอนได้จาก JavaScript ผ่านWebMessagePortCompat
โปรดทราบว่า API นี้จะพร้อมใช้งานในWebView
เวอร์ชัน 116 เท่านั้น (Ie7567, b/251152171)
เวอร์ชัน 1.7
เวอร์ชัน 1.7.0
24 พฤษภาคม 2023
androidx.webkit:webkit:1.7.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.7.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.6.0
- เราได้เพิ่มการรองรับการลากรูปภาพใน
WebView
คุณสามารถอนุญาตให้ผู้ใช้ลากรูปภาพออกจากWebView
ได้โดยเพิ่มDropDataContentProvider
ใหม่ลงในไฟล์ Manifest ของแอปตามที่อธิบายไว้ในเอกสารประกอบของคลาส - เราได้เพิ่ม
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)
API ซึ่งสามารถใช้เพื่อตั้งค่าไดเรกทอรีฐานที่WebView
จะใช้สำหรับกระบวนการปัจจุบัน เช่นเดียวกับเมธอดทั้งหมดในProcessGlobalConfig
คุณต้องเรียกใช้เมธอดนี้ก่อนที่จะสร้างอินสแตนซ์แรกของWebView
มีการเพิ่มวิธีการนี้เพื่อให้เฟรมเวิร์ก Android ปรับการตั้งค่าWebView
ได้ เราไม่แนะนําให้ใช้วิธีนี้สําหรับแอปพลิเคชันทั่วไป
เวอร์ชัน 1.7.0-rc01
10 พฤษภาคม 2023
androidx.webkit:webkit:1.7.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.7.0-beta01
เวอร์ชัน 1.7.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.7.0-beta01
5 เมษายน 2023
androidx.webkit:webkit:1.7.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.7.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- การเปลี่ยนแปลงเล็กน้อยใน Flag ฟีเจอร์และชื่อเมธอด รวมถึงทำให้
setDirectoryBasePaths()
ยอมรับไฟล์แทนสตริง (Ib0d0a)
เวอร์ชัน 1.7.0-alpha03
8 มีนาคม 2023
androidx.webkit:webkit:1.7.0-alpha03
ได้รับการปล่อยแล้ว เวอร์ชัน 1.7.0-alpha03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
ProcessGlobalConfig#setDirectoryBasePath(String, String)
API ซึ่งสามารถใช้เพื่อตั้งค่าไดเรกทอรีฐานที่WebView
จะใช้สำหรับกระบวนการปัจจุบัน (Ibd1a1, b/250553687)
การแก้ไขข้อบกพร่อง
- แก้ไขกฎ
ProGuard
ที่ไม่ถูกต้องซึ่งทำให้เกิดข้อผิดพลาดในการสร้างเมื่อใช้DexGuard
(Ia65c2, b/270034835)
เวอร์ชัน 1.7.0-alpha02
8 กุมภาพันธ์ 2023
androidx.webkit:webkit:1.7.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.7.0-alpha02 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ข้อบกพร่องในเอกสารประกอบของ
DropDataContentProvider
เวอร์ชัน 1.7.0-alpha01
25 มกราคม 2023
androidx.webkit:webkit:1.7.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.7.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราจะเพิ่มการรองรับการลากรูปภาพใน
WebView
คุณสามารถอนุญาตให้ผู้ใช้ลากรูปภาพออกจากWebView
ได้โดยเพิ่มDropDataContentProvider
ใหม่ลงในไฟล์ Manifest ของแอป (05a1a6)
เวอร์ชัน 1.6
เวอร์ชัน 1.6.1
22 มีนาคม 2023
androidx.webkit:webkit:1.6.1
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาดในการแยกวิเคราะห์ Proguard (Ia65c2)
เวอร์ชัน 1.6.0
25 มกราคม 2023
androidx.webkit:webkit:1.6.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.5.0
- เราได้เพิ่ม ProcessGlobalConfig API ใหม่เพื่อให้แอประบุการตั้งค่าการกําหนดค่าที่ต้องตั้งค่าก่อนโหลด WebView เช่น ส่วนต่อท้ายไดเรกทอรีข้อมูล WebView คุณควรตั้งค่าและนําไปใช้โดยเร็วที่สุดระหว่างการเริ่มต้นแอปพลิเคชัน เพื่อให้แน่ใจว่าการดำเนินการดังกล่าวจะเกิดขึ้นก่อนที่เธรดอื่นจะเรียกเมธอดที่โหลด
WebView
ลงในกระบวนการได้ - เราได้เพิ่ม CookieManagerCompat API ใหม่เพื่อขยาย android.webkit.CookieManager ด้วยเมธอด
getCookieInfo
ใหม่ ซึ่งดึงข้อมูลแอตทริบิวต์ทั้งหมดของคุกกี้ทั้งหมดที่ตั้งค่าไว้ใน URL ที่เฉพาะเจาะจง ซึ่งแตกต่างจาก getCookie API ที่มีอยู่เดิมในCookieManager
ซึ่งจะแสดงเฉพาะแอตทริบิวต์ชื่อและค่าของคุกกี้ WebSettingsCompat
มีวิธีการใหม่ในการเปิด/ปิดเอฟเฟกต์ของEnterpriseAuthenticationAppLinkPolicy
หากผู้ดูแลระบบตั้งค่าไว้ในWebView
และเพื่อรับการตั้งค่าปัจจุบัน ฟีเจอร์นี้ช่วยให้ WebView เปิดแอปการตรวจสอบสิทธิ์แทนที่จะเปิด URL การตรวจสอบสิทธิ์ ฟีเจอร์นี้ไม่มีผลกับอุปกรณ์ที่ไม่ได้จัดการโดยนโยบายขององค์กร- การเพิ่ม API ใหม่ลงใน
WebSettingsCompat
เพื่อให้แอปพลิเคชันส่งชื่อแพ็กเกจแอปในส่วนหัวX-Requested-With
ไปยังต้นทางในรายการที่อนุญาตได้อย่างชัดเจน โดยทั่วไปแล้ว ระบบจะส่งส่วนหัวในคำขอทุกรายการจากWebView
เวอร์ชัน 1.6.0-rc01
11 มกราคม 2023
androidx.webkit:webkit:1.6.0-rc01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0-rc01 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไข
NullPointerException
ในWebViewFeature.isStartupFeatureSupported(Context, String)
เมื่อทำงานบน SDK < L (Ic7292)
เวอร์ชัน 1.6.0-beta01
7 ธันวาคม 2022
androidx.webkit:webkit:1.6.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
ProcessGlobalConfig
มีการเปลี่ยนแปลงให้ใช้คอนสตรัคเตอร์ปกติและเทมอดการนําไปใช้แบบคงที่ คุณควรเรียกใช้เมธอด apply เพียงครั้งเดียวต่อกระบวนการโดยเร็วที่สุดเท่าที่จะเป็นไปได้ และระบบจะแสดงข้อผิดพลาดIllegalStateException
หากเรียกใช้มากกว่า 1 ครั้ง ออบเจ็กต์ProcessGlobalConfig
ไม่มีการจำกัดจำนวนครั้งที่เรียกตัวเซ็ตเตอร์อีกต่อไป (I456c3)
เวอร์ชัน 1.6.0-alpha03
9 พฤศจิกายน 2022
androidx.webkit:webkit:1.6.0-alpha03
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0-alpha03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคลาส
ProcessGlobalConfig
ซึ่งช่วยให้ผู้ใช้ตั้งค่าการกําหนดค่าส่วนกลางของกระบวนการได้ก่อนที่จะโหลดWebView
WebView
มีพารามิเตอร์การกําหนดค่าระดับกระบวนการทั้งหมดบางรายการที่เปลี่ยนแปลงไม่ได้เมื่อโหลดWebView
แล้ว (เช่น ไดเรกทอรีข้อมูลWebView
) คลาสนี้ช่วยให้แอปตั้งค่าพารามิเตอร์เหล่านี้ได้ คุณควรตั้งค่าและนําไปใช้โดยเร็วที่สุดระหว่างการเริ่มต้นแอปพลิเคชัน เพื่อให้แน่ใจว่าการดำเนินการดังกล่าวจะเกิดขึ้นก่อนที่เธรดอื่นจะเรียกเมธอดที่โหลดWebView
ลงในกระบวนการได้ (I7c0e0, b/250553687) - การเพิ่ม API ใหม่เพื่อให้แอปพลิเคชันส่งชื่อแพ็กเกจแอปอย่างชัดเจนในส่วนหัว X-Requested-With ไปยังต้นทางในรายการที่อนุญาต โดยทั่วไปแล้ว ระบบจะส่งส่วนหัวในคำขอทุกรายการจาก
WebView
(I0adfe, b/226552535)
การเปลี่ยนแปลง API
WebSettingsCompat#setAlgorithmicDarkeningAllowed
API ใช้งานได้ใน Android ทุกเวอร์ชันในWebView
เวอร์ชัน 105 ขึ้นไปWebView
เวอร์ชันก่อนหน้ารองรับ API ใน Android Q ขึ้นไปเท่านั้น ด้วยเหตุนี้ ระบบจึงไม่ทำเครื่องหมาย API นี้ว่า@RequiresApi(Build.VERSION_CODES.Q)
อีกต่อไป (I3ac1d)
เวอร์ชัน 1.6.0-alpha02
24 ตุลาคม 2022
androidx.webkit:webkit:1.6.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคลาส
CookieManagerCompat
ใหม่พร้อมกับgetCookieInfo
API ซึ่งดึงข้อมูลแอตทริบิวต์ทั้งหมดสําหรับคุกกี้ทั้งหมดที่ตั้งค่าไว้ใน URL ที่เฉพาะเจาะจง ซึ่งแตกต่างจากgetCookie
API ที่มีอยู่เดิมในCookieManager
ซึ่งจะแสดงเฉพาะแอตทริบิวต์ชื่อและค่าของคุกกี้ (I07365, b/242161756)
เวอร์ชัน 1.6.0-alpha01
24 สิงหาคม 2022
androidx.webkit:webkit:1.6.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.6.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API ใน
WebSettingsCompat
เพื่อเปิด/ปิดใช้ผลของEnterpriseAuthenticationAppLinkPolicy
หากผู้ดูแลระบบตั้งค่าไว้ในWebView
ฟีเจอร์นี้ช่วยให้WebView
เปิดแอปการตรวจสอบสิทธิ์แทนที่จะเปิด URL การตรวจสอบสิทธิ์ได้ ฟีเจอร์นี้ไม่มีผลกับอุปกรณ์ที่ไม่ได้จัดการโดยนโยบายขององค์กร
เวอร์ชัน 1.5.0
เวอร์ชัน 1.5.0
24 สิงหาคม 2022
androidx.webkit:webkit:1.5.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.5.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.4.0
setAlgorithmicDarkeningAllowed
API ใหม่ในWebSettingsCompat
จะแทนที่setForceDark
และsetForceDarkStrategy
API เดิม แอปที่กำหนดเป้าหมายเป็น SDK ระดับ 33 ขึ้นไป (T) ควรใช้ API ใหม่ เนื่องจาก API เก่าจะไม่มีผลกับแอปเหล่านั้นอีกต่อไป- ตอนนี้คุณตั้งค่ารายการที่อนุญาตของ URL เพื่อใช้พร็อกซีที่กําหนดค่าไว้ผ่าน
ProxyCofig.Builder
ได้แล้วโดยตั้งค่าsetReverseBypassEnabled
เป็นtrue
เมื่อใช้การตั้งค่านี้ URL อื่นๆ ทั้งหมดจะข้ามพร็อกซีที่กําหนดค่าไว้
เวอร์ชัน 1.5.0-rc01
10 สิงหาคม 2022
androidx.webkit:webkit:1.5.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.5.0-beta01
เวอร์ชัน 1.5.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.5.0-beta01
29 มิถุนายน 2022
androidx.webkit:webkit:1.5.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.5.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ API ที่เกี่ยวข้องกับการทําให้มืดตามอัลกอริทึมได้รับการกำกับเนื้อหาให้ต้องใช้ API ระดับ Q แล้ว API จะไม่มีผลกับ API ระดับต่ำกว่า Q เนื่องจากธีมสีเข้มไม่ใช่ตัวเลือกในอุปกรณ์เหล่านี้ (I0905e)
เวอร์ชัน 1.5.0-alpha01
18 พฤษภาคม 2022
androidx.webkit:webkit:1.5.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.5.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มเมธอด
getVariationsHeader()
ใหม่ในWebViewCompat
เพื่อรับค่าส่วนหัว X-Client-Data ที่WebView
ส่ง ค่าที่แสดงผลจะเป็น protobuf ClientVariations ที่เข้ารหัส Base64 - เพิ่ม API ใน
WebSettingsCompat
เพื่ออนุญาต/ไม่อนุญาตการทำให้สีเข้มขึ้นตามอัลกอริทึมสำหรับแอปที่มี targetSdk >= 33 (I29597)
การเปลี่ยนแปลง API
- เพิ่มวิธีการใหม่ใน
ProxyCofig.Builder
เพื่อตั้งค่าการบายพาสย้อนกลับ การตั้งค่าการข้ามย้อนกลับเป็น "จริง" หมายความว่าเฉพาะ URL ในรายการการข้ามเท่านั้นที่จะใช้การตั้งค่าพร็อกซี (I9eaa2, b/168728599)
การแก้ไขข้อบกพร่อง
- แก้ไขการพิมพ์ผิดในเอกสารประกอบเกี่ยวกับธีมมืด (I36ebf, b/194343633)
- แก้ไขข้อบกพร่องที่เมธอด
WebViewAssetLoader.Builder
ขึ้นอยู่กับลําดับโดยไม่ตั้งใจ (If420d, b/182196765)
เวอร์ชัน 1.4.0
เวอร์ชัน 1.4.0
16 ธันวาคม 2020
androidx.webkit:webkit:1.4.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.3.0
- เพิ่ม
setSafeBrowsingAllowlist()
API ใหม่มาแทนที่setSafeBrowsingWhitelist()
ซึ่งจะช่วยให้แอปอัปเดตโค้ดเพื่อหลีกเลี่ยงการใช้คำที่ไม่ครอบคลุม ในขณะที่ยังคงรองรับ Android SDK และ WebView เวอร์ชันเดียวกับ API ที่เลิกใช้งาน - แก้ไขข้อบกพร่องใน setProxyOverride ที่ทำให้ใช้กฎสำรองอย่างไม่ถูกต้อง
เวอร์ชัน 1.4.0-rc02
2 ธันวาคม 2020
androidx.webkit:webkit:1.4.0-rc02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-rc02 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขกฎสำรองที่ใช้อย่างไม่ถูกต้องเมื่อใช้ setProxyOverride
เวอร์ชัน 1.4.0-rc01
11 พฤศจิกายน 2020
androidx.webkit:webkit:1.4.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.4.0-beta01
เวอร์ชัน 1.4.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.4.0-beta01
14 ตุลาคม 2020
androidx.webkit:webkit:1.4.0-beta01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.4.0-alpha01
เวอร์ชัน 1.4.0-beta01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.4.0-alpha01
16 กันยายน 2020
androidx.webkit:webkit:1.4.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
WebViewCompat#setSafeBrowsingAllowlist()
API ใหม่เพื่อแทนที่setSafeBrowsingWhitelist()
ซึ่งจะช่วยให้แอปอัปเดตโค้ดเพื่อหลีกเลี่ยงการใช้คำที่ไม่ครอบคลุม ในขณะที่ยังคงรองรับช่วง Android SDK และ WebView เวอร์ชันเดียวกับ API ที่เลิกใช้งาน (I8d65d)
เวอร์ชัน 1.3.0
เวอร์ชัน 1.3.0
19 สิงหาคม 2020
androidx.webkit:webkit:1.3.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- ForceDarkStrategy API ช่วยให้ควบคุมการทำให้ WebView มืดลงได้มากขึ้น (การทำให้ CSS/เนื้อหาเว็บมืดลงเทียบกับการทำให้มืดลงโดยอัตโนมัติ)
- WebMessageListener และ API ที่เกี่ยวข้องมีกลไกที่ง่ายและปลอดภัยในการสร้างการสื่อสารระหว่างเนื้อหาเว็บกับแอปที่ฝัง WebView
isMultiProcessEnabled
API เพื่อตรวจสอบว่า WebView ทำงานแบบหลายกระบวนการหรือไม่ ซึ่งทำได้ตั้งแต่ Android O เป็นต้นไป และหมายความว่าระบบจะแสดงผลเนื้อหาเว็บในกระบวนการแสดงผลที่อยู่ในแซนด์บ็อกซ์แยกจากกระบวนการของแอปพลิเคชัน โปรแกรมแสดงผลในกล่องเสมือนนี้อาจแชร์กับ WebView อื่นๆ ในแอปพลิเคชันเดียวกัน แต่ไม่แชร์กับกระบวนการแอปพลิเคชันอื่นๆ
เวอร์ชัน 1.3.0-rc02
5 สิงหาคม 2020
androidx.webkit:webkit:1.3.0-rc02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-rc02 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- การอัปเดตนี้แก้ไขปัญหาความเข้ากันได้ที่บางครั้ง
WebMessageListener
จะขัดข้องระหว่างการพัฒนาในเครื่องหากแอปเริ่มต้นด้วยฟีเจอร์การเรียกใช้ทันทีของ Android Studio
เวอร์ชัน 1.3.0-rc01
24 มิถุนายน 2020
androidx.webkit:webkit:1.3.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.3.0-beta01
เวอร์ชัน 1.3.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.3.0-beta01
10 มิถุนายน 2020
androidx.webkit:webkit:1.3.0-beta01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-beta01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
ForceDarkStrategy
API เพื่อควบคุมความมืดของ WebView (ความมืดของ CSS/เนื้อหาเว็บเทียบกับความมืดอัตโนมัติ)WebMessageListener
API มีกลไกที่ง่ายและปลอดภัยในการตั้งค่าการสื่อสารระหว่างเนื้อหาเว็บกับแอปที่ฝัง WebViewMultiProcessEnabled
API เพื่อตรวจสอบว่า WebView ทำงานในโหมดหลายกระบวนการหรือไม่
เวอร์ชัน 1.3.0-alpha03
27 พฤษภาคม 2020
androidx.webkit:webkit:1.3.0-alpha03
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha03 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้วิธีการ
addWebMessageListener
ได้รับSet<String>
ของกฎต้นทางที่อนุญาต (ก่อนหน้านี้คือList<String>
)
เวอร์ชัน 1.3.0-alpha02
29 เมษายน 2020
androidx.webkit:webkit:1.3.0-alpha02
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- MultiProcessEnabled API เพื่อตรวจสอบว่า WebView ทำงานในโหมดหลายกระบวนการหรือไม่
การเปลี่ยนแปลง API
- ตอนนี้ค่าคงที่ของกลยุทธ์มืดทั้งหมดจะมี
DARK_STRATEGY
นำหน้า
เวอร์ชัน 1.3.0-alpha01
15 เมษายน 2020
androidx.webkit:webkit:1.3.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
ForceDarkStrategy
API เพื่อควบคุมความมืดของWebView
(ความมืดของ CSS/เนื้อหาเว็บเทียบกับความมืดอัตโนมัติ)WebMessageListener
API มีกลไกที่ง่ายและปลอดภัยในการตั้งค่าการสื่อสารระหว่างเนื้อหาเว็บกับแอปที่ฝัง WebView
เวอร์ชัน 1.2.0
เวอร์ชัน 1.2.0
4 มีนาคม 2020
androidx.webkit:webkit:1.2.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- เพิ่ม ForceDark API เพื่อควบคุมว่าควรแสดงผล WebView ในโหมดมืดหรือไม่
เวอร์ชัน 1.2.0-rc01
19 กุมภาพันธ์ 2020
androidx.webkit:webkit:1.2.0-rc01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.2.0-beta01
เวอร์ชัน 1.2.0-rc01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-beta01
5 กุมภาพันธ์ 2020
androidx.webkit:webkit:1.2.0-beta01
เผยแพร่โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.2.0-alpha01
เวอร์ชัน 1.2.0-beta01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-alpha01
18 ธันวาคม 2019
androidx.webkit:webkit:1.2.0-alpha01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ForceDark API เพื่อควบคุมว่าควรแสดงผล WebView ในโหมดมืดหรือไม่
เวอร์ชัน 1.1.0
เวอร์ชัน 1.1.0
7 พฤศจิกายน 2019
androidx.webkit:webkit:1.1.0
ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สําคัญนับตั้งแต่เวอร์ชัน 1.0.0
- Getter API เพื่อเสริม setWebViewClient() และ setWebChromeClient()
- ProxyController API เพื่อตั้งค่าพร็อกซีคำขอเครือข่ายสำหรับ WebView ของแอป
- WebViewAssetLoader API เพื่อลดความซับซ้อนในการโหลดชิ้นงาน ทรัพยากร และไฟล์ APK จากไดเรกทอรีข้อมูลแอปผ่านการสกัดกั้นคำขอ ซึ่งจะอนุญาตให้เข้าถึงทรัพยากรบนเว็บและในเครื่องได้โดยไม่ต้องปิดใช้ CORS
- TracingController API เพื่อรวบรวมข้อมูลการติดตาม WebView เพื่อวัตถุประสงค์ในการแก้ไขข้อบกพร่อง
- RenderProcess API เพื่อจัดการบริการโปรแกรมแสดงผล WebView และตรวจจับเมื่อเนื้อหาทำงานผิดปกติจนทำให้โปรแกรมแสดงผล WebView ไม่ตอบสนอง
- อัปเดต API ที่มีอยู่ให้รวมคำอธิบายประกอบเกี่ยวกับ Nullability (
@NonNull
,@Nullable
) และ Thread (@UiThread
,@WorkerThread
)
เวอร์ชัน 1.1.0-rc01
9 ตุลาคม 2019
androidx.webkit:webkit:1.1.0-rc01
ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-rc01 มีการคอมมิตเหล่านี้
แก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
setWebViewRenderProcessClient()
อาจขัดข้องหากส่งไคลเอ็นต์ Null
เวอร์ชัน 1.1.0-beta01
5 กันยายน 2019
androidx.webkit:webkit:1.1.0-beta01
ได้รับการปล่อยแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
InternalStoragePathHandler
ใหม่ในWebViewAssetLoader
เพื่อโหลดไฟล์จากไดเรกทอรีข้อมูลของแอป
การเปลี่ยนแปลง API
- ตอนนี้
ProxyConfig#getProxyRules()
จะแสดงรายการอินสแตนซ์ProxyRule
ที่แก้ไขไม่ได้ ซึ่งเป็นคลาสใหม่ที่เก็บตัวกรองรูปแบบและ URL พร็อกซีที่เกี่ยวข้อง
แก้ไขข้อบกพร่อง
WebViewAssetLoader
จะตั้งค่าเริ่มต้นเป็นประเภท MIME "text/plain" (แทนที่จะเป็นค่าว่าง) เมื่อไม่สามารถคาดเดาประเภท MIME จากเส้นทางไฟล์WebViewAssetLoader
ไม่แสดงNullPointerException
อีกต่อไปเมื่อโหลดไฟล์ที่มีสัญลักษณ์พิเศษในชื่อเส้นทาง
เวอร์ชัน 1.1.0-alpha02
7 สิงหาคม 2019
androidx.webkit:webkit:1.1.0-alpha02
ได้รับการปล่อยแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
WebViewAssetLoader
แสดงอินเทอร์เฟซPathHandler
เพื่อให้แอปสร้างฟังก์ชันการจัดการเส้นทางที่กําหนดเองได้
การเปลี่ยนแปลง API
WebViewAssetLoader
เป็นคลาสสุดท้ายแล้ว เนื่องจากไม่ได้มีไว้เพื่อจัดเตรียมคลาสย่อย- การใช้งาน
WebViewAssetLoader#PathHandler
เป็นแบบสาธารณะและเวอร์ชันสุดท้ายแล้ว - เปลี่ยนแปลงชื่อเมธอด ProxyConfig เล็กน้อย
ProxyController
: เพิ่มเมธอดใหม่addDirect()
และaddDirect(String)
เพื่อเชื่อมต่อกับเซิร์ฟเวอร์โดยตรง นำสตริง DIRECT ออก- อัปเดต API ที่มีอยู่ให้รวมคำอธิบายประกอบเกี่ยวกับ Nullability (
@NonNull
,@Nullable
) และ Thread (@UiThread
,@WorkerThread
)
เวอร์ชัน 1.1.0-alpha01
7 พฤษภาคม 2019
androidx.webkit:webkit:1.1.0-alpha01
ได้รับการปล่อยแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
- Getter API เพื่อเสริม
setWebViewClient()
และsetWebChromeClient()
- ProxyController API เพื่อตั้งค่าพร็อกซีคำขอเครือข่ายสำหรับ WebView ของแอป
- AssetLoader API เพื่อลดความซับซ้อนในการโหลดชิ้นงานและทรัพยากร APK ผ่านการสกัดกั้นคําขอ ซึ่งช่วยให้เข้าถึงทรัพยากรเว็บได้โดยไม่ต้องปิดใช้ CORS
- TracingController API เพื่อรวบรวมข้อมูลการติดตาม WebView เพื่อวัตถุประสงค์ในการแก้ไขข้อบกพร่อง
- RenderProcess API เพื่อจัดการบริการโปรแกรมแสดงผล WebView และตรวจจับเมื่อเนื้อหาทำงานผิดปกติจนทำให้โปรแกรมแสดงผล WebView ไม่ตอบสนอง
แก้ไขข้อบกพร่อง
- แก้ไขการจัดรูปแบบเอกสารประกอบเล็กน้อยสำหรับ API ที่มีอยู่