Webkit

עבודה עם ממשקי WebView API מודרניים ב-Android מגרסה 5 ואילך.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסה אלפא
13 בנובמבר 2024 1.9.0 - - 1.13.0-alpha01

הצהרת יחסי תלות

כדי להוסיף תלות ב-Webkit, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

Groovy

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

Kotlin

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

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

גרסה 1.13

גרסה 1.13.0-alpha01

13 בנובמבר 2024

androidx.webkit:webkit:1.13.0-alpha01 משוחרר. הגרסה 1.13.0-alpha01 מכילה את ההוספות האלה.

תכונות חדשות

  • הוספת API אסינכרוני ל-WebView לצורך הפעלה ניסיונית. (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) ובכל גרסאות ה-build כשמשתמשים ב-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 באמצעות ממשקי ה-API החדשים setAudioMuted ו-isAudioMuted, שדומים להשתקת כרטיסייה ב-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 חדש עם תמיכה בכמה פרופילים ל-WebViews.
    • לממשק Profile יש ממשקי API שונים שאפשר להשתמש בהם כדי לקבל נתונים המשויכים לפרופיל הזה, כמו השם שלו, GeoLocationPermissions,‏ ServiceWorkerController,‏ CookieManager ו-WebStorage. האובייקטים האלה ספציפיים לפרופיל, והמידע לא משותף בין פרופילים שונים באפליקציה.
    • אפשר לשנות את הפרופיל שבו משתמש מופע WebView באמצעות השיטה WebViewCompat#setProfile ולאחזר אותו באמצעות WebViewCompat#getProfile.
    • בעזרת ProfileStore החדש, אפשר לנהל את הפרופילים הזמינים באפליקציה, כולל פרופיל ברירת המחדל.
    • ממשקי ה-API הקיימים של WebView, כמו CookieManager#getInstance, ימשיכו לפעול בפרופיל ברירת המחדל.
  • נוסף ממשק API להחדרת JavaScript ולהרצתו לפני טעינת הדף.
    • ממשק ה-API WebViewCompat#addDocumentStartJavascript מאפשר לאפליקציות להחדיר סקריפטים ל-WebView, שמובטח שיופעלו לפני שהסקריפטים בדף יופעלו. ה-API מאפשר לאפליקציה לציין רשימת יעדי מקורות שבהם הסקריפט יופעל, כדי להבטיח שהוא יפעל רק בדפים המיועדים. בניגוד ל-WebView#evaluateJavascript, ממשק ה-API הזה יאפשר להריץ סקריפטים ב-Iframes מוטמעים כשהם נטענים. אפליקציות יכולות להשתמש ב-API החדש הזה בשילוב עם WebViewCompat#addWebMessageListener כדי להגדיר תקשורת דו-כיוונית עם JavaScript בדף באופן מהימן.
  • נוספו ממשקי API לשינוי האופן שבו מתבצע רישום של אירועי דיווח על שיוך (Attribution) בארגז החול לפרטיות.
    • הוספנו ממשק API חדש, WebSettingsCompat#setAttributionRegistrationBehavior, שמאפשר למפתחים לקבוע אם מקורות וטריגרים של שיוך (Attribution) ירשמו כמגיעים מהאפליקציה עצמה או מהתוכן באינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את דיווח השיוך ב-WebView. בנוסף, הוספנו ממשק API חדש WebSettingsCompat#getAttributionRegistrationBehavior כדי לקבל את ההתנהגות הנוכחית.
    • מידע נוסף זמין במסמכי התיעוד של ארגז החול לפרטיות.
  • נוספו ממשקי API כדי לשנות את המטא-נתונים של סוכן המשתמש עבור רמזים על הלקוח.
    • הוספנו ממשק API חדש, WebSettingsCompat#setUserAgentMetadata, כדי לשנות את מטא-נתוני סוכן המשתמש ב-WebView שמשמש לאכלוס של רמזים ללקוח של סוכן המשתמש. הוספנו גם ממשק API חדש נוסף, WebSettingsCompat#getUserAgentMetadata, כדי לקבל שינויים קיימים של סוכן המשתמש. אנחנו ממליצים לאפליקציות להשתמש ב-API החדש כדי להגדיר את ערכי ההחרגה הנכונים בכל פעם שהאפליקציה משנה את מחרוזת ברירת המחדל של סוכן המשתמש באמצעות 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

  • טיפול בבעיה של סטטוס ה-null ב-API של מטא-נתונים של סוכן משתמש. אנחנו מעדכנים את הכיתה BrandVersion כך שתשתמש בתבנית ה-builder, ומגדירים עקביות ביכולת של ה-getters וה-setters של הכיתה 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 מכילה את ההוספות האלה.

תכונות חדשות

  • הוספנו את ה-API עם תמיכה בכמה פרופילים, שמאפשר לכם לנהל סשנים נפרדים של גלישה בין WebViews. לכל פרופיל יש נתונים משלו (למשל קובצי cookie). אפשר ליצור פרופילים, להקצות אותם למכונות WebView ולאחזר אותם מאוחר יותר כדי לגשת לנתונים. יש סוג יחיד (singleton) בשם ProfileStore שעוזר לנהל פרופילים על ידי יצירה או מחיקה באמצעות ממשקי ה-API: getOrCreateProfile, ‏ getProfile, ‏ getAllProfileNames ו-deleteProfile. למחלקה Profile יהיו ממשקי API שונים שאפשר להשתמש בהם כדי לקבל נתונים משויכים לפרופיל הזה, כמו השם שלו, GeoLocationPermissions,‏ ServiceWorkerController,‏ CookieManager ו-WebStorage. כברירת מחדל, כל WebView יפעל עם פרופיל ברירת המחדל. עם זאת, אפשר לשנות את זה באמצעות WebViewCompat#setProfile. בהקשר הזה, אפשר לאחזר את הפרופיל של WebView באמצעות WebViewCompat#getProfile. (I32d22)
  • הוספת ממשקי API כדי לשנות את האופן שבו אירועים של דיווח שיוך (Attribution) נרשמים. השקנו ממשק API חדש, WebSettingsCompat#setAttributionRegistrationBehavior, שמאפשר למפתחים להגדיר אם מקורות וטריגרים יירשמו כמגיעים מהאפליקציה עצמה או מהתוכן באינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את דוחות השיוך ב-WebView. בנוסף, הוספנו ממשק API חדש WebSettingsCompat#getAttributionRegistrationBehavior כדי לקבל את ההתנהגות הנוכחית. מידע נוסף זמין במסמכי התיעוד של ארגז החול לפרטיות. (I661f2)
  • מוסיפים ממשקי API כדי לשנות את המטא-נתונים של סוכן המשתמש. הוספנו ממשק API חדש WebSettingsCompat#setUserAgentMetadata כדי לשנות את המטא-נתונים של סוכן המשתמש ב-WebView, שמשמשים לאכלוס של הטיפים ללקוח לגבי סוכן המשתמש. הוספנו גם ממשק API חדש WebSettingsCompat#getUserAgentMetadata כדי לקבל שינויים קיימים של סוכן המשתמש. אנחנו ממליצים לאפליקציות להשתמש ב-API החדש כדי להגדיר את ערכי ההחרגה הנכונים, במקום להסתמך על שינוי של סוכן המשתמש. (I74500)
  • הוספת API להחדרת JavaScript להפעלה במהלך טעינת הדף. ממשק ה-API WebViewCompat.addDocumentStartJavascript מאפשר לאפליקציות להחדיר סקריפטים ל-WebView, שיופעלו לפני שהסקריפטים של הדף יופעלו. ה-API מאפשר לאפליקציה לציין רשימת יעדי מקורות שבהם הסקריפט יופעל, כדי להבטיח שהוא יפעל רק בדפים המיועדים. בניגוד ל-WebView.evaluateJavascript, ממשק ה-API הזה יאפשר להריץ סקריפטים ב-Iframes מוטמעים כשהם נטענים. (Ide063)

גרסה 1.8

גרסה 1.8.0

6 בספטמבר 2023

androidx.webkit:webkit:1.8.0 משוחרר. גרסה 1.8.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.7.0

גרסה 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 הזה יהיה זמין רק מגרסה 116 של WebView. (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 החדש למניפסט של האפליקציה, כפי שמתואר במסמכי העזרה של הכיתה.
  • הוספנו את ממשק ה-API ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File), שאפשר להשתמש בו כדי להגדיר את ספריות הבסיס שבהן WebView ישתמש בתהליך הנוכחי. כמו כל השיטות ב-ProcessGlobalConfig, צריך לקרוא לשיטה הזו לפני יצירת המופע הראשון של WebView. השיטה הזו נוספה כדי לספק ל-Android framework את היכולת לשנות את ההגדרות של 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

  • שינוי קטן בדגל התכונה ובשם השיטה, והגדרת setDirectoryBasePaths() לקבלת קובץ במקום מחרוזת (Ib0d0a)

גרסה 1.7.0-alpha03

8 במרץ 2023

androidx.webkit:webkit:1.7.0-alpha03 משוחרר. גרסה 1.7.0-alpha03 כוללת את ההצהרות האלה.

שינויים ב-API

  • מוסיפים את ה-API של ProcessGlobalConfig#setDirectoryBasePath(String, String), שאפשר להשתמש בו כדי להגדיר את ספריות הבסיס שבהן WebView ישתמש בתהליך הנוכחי. (Ibd1a1, ‏ b/250553687)

תיקוני באגים

  • תיקון כלל ProGuard לא תקין שגורם לשגיאות build בזמן השימוש ב-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 החדש למניפסט של האפליקציה. (05a1a6)

גרסה 1.6

גרסה 1.6.1

22 במרץ 2023

androidx.webkit:webkit:1.6.1 משוחרר. גרסה 1.6.1 כוללת את ההצהרות האלה על ביצוע שינויים (commits).

תיקוני באגים

  • תיקון שגיאת ניתוח של Proguard‏ (Ia65c2)

גרסה 1.6.0

25 בינואר 2023

androidx.webkit:webkit:1.6.0 משוחרר. גרסה 1.6.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.5.0

  • הוספנו ממשק API חדש בשם ProcessGlobalConfig כדי לאפשר לאפליקציות לספק הגדרות תצורה שצריך להגדיר לפני טעינת WebView, כמו הסיומת של ספריית הנתונים של WebView. צריך להגדיר את ההגדרות ולהחיל אותן בהקדם האפשרי במהלך הפעלת האפליקציה, כדי לוודא שהן יתבצעו לפני ששרשור אחר יוכל להפעיל שיטה שטעינה את WebView בתהליך.
  • נוספה גרסה חדשה של CookieManagerCompat API כדי להרחיב את android.webkit.CookieManager בשיטה חדשה של getCookieInfo, שמאחזרת את כל המאפיינים של כל קובצי ה-cookie שהוגדרו בכתובת URL ספציפית. הבדלים ביחס ל-API הקיים של getCookie ב-CookieManager, שמחזיר רק את מאפייני השם והערך של קובצי ה-Cookie.
  • ל-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 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

שינויים ב-API

  • ProcessGlobalConfig השתנה כך שישתמש ב-constructor רגיל ובשיטת apply סטטית. צריך לקרוא לשיטה apply רק פעם אחת לכל תהליך, בהקדם האפשרי, והיא תשליך את הערך IllegalStateException אם תתבצע קריאה אליה יותר מפעם אחת. אין יותר הגבלות על מספר הפעמים שאפשר להפעיל את ה-setters של אובייקטים מסוג 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

  • ממשק ה-API של WebSettingsCompat#setAlgorithmicDarkeningAllowed נתמך בכל הגרסאות של Android בגרסה 105 ואילך של WebView. בגרסאות קודמות של 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 חדש יחד עם ממשק API מסוג getCookieInfo שמאחזר את כל המאפיינים של כל קובצי ה-cookie שהוגדרו בכתובת URL ספציפית. זה שונה מ-API ה-getCookie הקיים ב-CookieManager, שמחזיר רק את מאפייני השם והערך של קובצי ה-Cookie. (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

  • ממשק API חדש של setAlgorithmicDarkeningAllowed ב-WebSettingsCompat מחליף את ממשקי ה-API הישנים של setForceDark ו-setForceDarkStrategy. באפליקציות שמטרגטות SDK מגרסה 33 ואילך (T) צריך להשתמש ב-API החדש, כי ל-API הישן לא תהיה יותר השפעה על האפליקציות האלה.
  • עכשיו אפשר להגדיר רשימת היתרים של כתובות URL לשימוש בשרת ה-proxy המוגדר דרך ProxyCofig.Builder, על ידי הגדרת setReverseBypassEnabled ל-true. כשהאפשרות הזו תהיה בתוקף, כל כתובות ה-URL האחרות יעקפו את שרת ה-proxy שהוגדר.

גרסה 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 כדי להגדיר מעקף הפוך. אם ההגדרה reverse bypass מוגדרת כ-true, רק כתובות URL ברשימה לעקיפת ה-proxy ישתמשו בהגדרות ה-proxy. (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

  • הוספנו ממשק API חדש של setSafeBrowsingAllowlist() כדי להחליף את setSafeBrowsingWhitelist(). כך אפשר לעדכן את הקוד של האפליקציות כדי להימנע משימוש במונחים לא כוללים, ועדיין לתמוך באותו מגוון של ערכות SDK ל-Android וגרסאות 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 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

שינויים ב-API

  • הוספנו ממשק API חדש של WebViewCompat#setSafeBrowsingAllowlist() כדי להחליף את setSafeBrowsingWhitelist(). כך אפשר לעדכן את הקוד של האפליקציות כדי להימנע משימוש במונחים לא כוללים, ועדיין לתמוך באותו טווח של ערכות SDK ל-Android וגרסאות 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 פועל במספר תהליכים. אפשר לעשות זאת החל מגרסה O של Android. המשמעות היא שרינדור של תוכן אינטרנט מתבצע בתהליך עיבוד גרפי בקונטיינר נפרד, בנפרד מתהליך האפליקציה. אפשר לשתף את המכשיר לעיבוד גרפיקה בקופסה עם רכיבי WebView אחרים באותה אפליקציה, אבל אי אפשר לשתף אותו עם תהליכים אחרים של האפליקציה.

גרסה 1.3.0-rc02

5 באוגוסט 2020

androidx.webkit:webkit:1.3.0-rc02 משוחרר. גרסה 1.3.0-rc02 כוללת את ההוספות האלה.

תיקוני באגים

  • כך מתקנים בעיית תאימות שבה WebMessageListener קרסה לפעמים במהלך הפיתוח המקומי אם האפליקציה הופעל באמצעות Android Studio Instant Run.

גרסה 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/תוכן אינטרנט לעומת הכהיה אוטומטית).
  • ממשקי ה-API של WebMessageListener מספקים מנגנון פשוט ומאובטח ליצירת תקשורת בין תוכן האינטרנט לבין אפליקציית הטמעת WebView.
  • MultiProcessEnabled 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/תוכן אינטרנט לעומת החשכה אוטומטית).
  • ממשקי ה-API של WebMessageListener מספקים מנגנון פשוט ומאובטח ליצירת תקשורת בין תוכן האינטרנט לבין אפליקציית הטמעת 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

  • ממשקי API מסוג Getter שתומכים ב-setWebViewClient()‎ וב-setWebChromeClient()‎.
  • ProxyController API להגדרת שרת proxy לבקשות רשת עבור רכיבי WebView של אפליקציה.
  • WebViewAssetLoader API כדי לפשט את הטעינה של נכסים, משאבים וקובצי APK מספריית נתוני האפליקציה באמצעות ניתוב בקשות. כך אפשר לגשת למשאבים באינטרנט ובמחשב בלי להשבית את CORS.
  • TracingController API לאיסוף נתוני מעקב של WebView למטרות ניפוי באגים.
  • ממשקי API של RenderProcess לניהול שירותי עיבוד של WebView, ולזיהוי מקרים שבהם תוכן עם התנהגות לא תקינה גורם לעיבוד של WebView להפסיק להגיב.
  • עדכנו את ממשקי ה-API הקיימים כך שיכללו הערות לגבי יכולת השימוש באפס (@NonNull, @Nullable) ולגבי שרשור (@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 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • InternalStoragePathHandler חדש ב-WebViewAssetLoader כדי לטעון קבצים מספריית הנתונים של האפליקציה.

שינויים ב-API

  • הפונקציה ProxyConfig#getProxyRules() מחזירה עכשיו רשימה שלא ניתן לשנות של מכונות ProxyRule, שהיא סוג חדש שמכיל מסנן סכימה וכתובת ה-URL של שרת ה-proxy התואם.

תיקוני באגים

  • אם לא ניתן לנחש את סוג ה-MIME מנתיב הקובץ, WebViewAssetLoader מוגדר כברירת מחדל לסוג ה-MIME 'text/plain' (במקום null).
  • WebViewAssetLoader לא יוצר יותר NullPointerException בזמן טעינת קבצים עם תווים מיוחדים בשמות הנתיבים שלהם.

גרסה 1.1.0-alpha02

7 באוגוסט 2019

androidx.webkit:webkit:1.1.0-alpha02 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • WebViewAssetLoader חושף את הממשק PathHandler כדי לאפשר לאפליקציות ליצור פונקציונליות מותאמת אישית לטיפול בנתיבים.

שינויים ב-API

  • WebViewAssetLoader היא עכשיו כיתה סופית, כי היא לא מיועדת ליצירת תת-כיתות.
  • הטמעות של WebViewAssetLoader#PathHandler הן עכשיו ציבוריות וסופיות.
  • שינויים קלים בשמות השיטות של ProxyConfig.
  • ProxyController: נוספו השיטות החדשות addDirect() ו-addDirect(String) לחיבור ישיר לשרתים. הוסרו המחרוזות DIRECT.
  • עדכנו את ממשקי ה-API הקיימים כך שיכללו הערות לגבי יכולת השימוש באפס (@NonNull, @Nullable) ולגבי שרשור (@UiThread, @WorkerThread).

גרסה 1.1.0-alpha01

7 במאי 2019

androidx.webkit:webkit:1.1.0-alpha01 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • ממשקי API מסוג getter כתוספת ל-setWebViewClient() ול-setWebChromeClient()
  • ProxyController API להגדרת שרת proxy לבקשות רשת עבור רכיבי WebView של אפליקציה.
  • AssetLoader API כדי לפשט את הטעינה של נכסים ומשאבים של APK באמצעות ניתוב נתונים (interception) של בקשות, ומאפשר גישה למשאבי אינטרנט בלי להשבית את CORS.
  • TracingController API לאיסוף נתוני מעקב של WebView למטרות ניפוי באגים.
  • ממשקי API של RenderProcess לניהול שירותי עיבוד של WebView, ולזיהוי מקרים שבהם תוכן עם התנהגות לא תקינה גורם לעיבוד של WebView להפסיק להגיב.

תיקוני באגים

  • תיקונים קלים בפורמט של מסמכי העזרה של ממשקי API קיימים.