Webkit
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 23 בספטמבר 2026 | 1.17.1 | - | - | 1.18.0-alpha02 |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-Webkit, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
מגניב
dependencies { implementation "androidx.webkit:webkit:1.17.1" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.17.1") }
מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
גרסה 1.18
גרסה 1.18.0-alpha02
23 בספטמבר 2026
androidx.webkit:webkit:1.18.0-alpha02 מופץ. גרסה 1.18.0-alpha02 מכילה את השמירות האלה.
גרסה 1.18.0-alpha01
9 בספטמבר 2026
androidx.webkit:webkit:1.18.0-alpha01 מופץ. גרסה 1.18.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו את API
Profile#setCrossOriginIsolatedAllowlistו-Profile#getCrossOriginIsolatedAllowlistכדי להשבית את תכונות האבטחה של בידוד המקור, וכך לאפשר את השימוש ב-SharedArrayBuffer. (I889d3, b/545572447)
שינויים ב-API
- משנה את השם של
PrefetchParameters#isJavaScriptEnabledל-includeClientHints. isJavaScriptEnabledמסומן כהוצאה משימוש. (I269d3, b/537260697) - מוסיף את
WEBVIEW_NAVIGATE_DRAIN_PREFETCHל-WebViewFeature, שאפשר להשתמש בו כדי לקבוע אם הפונקציה Navigation#navigate תרוקן את תור הטעינה מראש לפני הניווט לכתובת ה-URL החדשה. (I6a7a9) - משנה את השם של
Profile#addQuicHintsל-preferQuicFor. (I9a663)
גרסה 1.17 של Webkit
גרסה 1.17.1
23 בספטמבר 2026
androidx.webkit:webkit:1.17.1 מופץ. גרסה 1.17.1 מכילה את השמירות האלה.
תיקוני באגים
- הסרנו את Kotlin מהספרייה של
webkitכדי לבטל את החסימה של אפליקציות שיש להן בעיות ב-kotlinc.
גרסה 1.17.0
12 באוגוסט 2026
androidx.webkit:webkit:1.17.0 מופץ. גרסה 1.17.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.16.0
- יכולות ניווט משופרות (
WebViewCompat#navigate): גרסה מודרנית שלWebView#loadUrl. היכולות העיקריות כוללות החלפה של רשומות היסטוריה, החזרה של אובייקטNavigationשאפשר לעקוב אחריו ושמירה עקבית של כותרות במהלך שמירה או שחזור של מצב. - שליטה במכסת מטמון HTTP (
Profile#getHttpCache): מספקת ממשקי API לבדיקה ולשינוי של מכסות מטמון HTTP ברמת הפרופיל. התכונה הזו שימושית לאפליקציות עם הרבה תוכן סטטי, ומצמצמת את נפח ספריית המטמון כשהיא לא בשימוש. - הוספה לרשימת ההמתנה של חיבורים מראש (
Profile#enqueuePreconnect): מאפשרת להוסיף לרשימת ההמתנה בקשות לחיבור מראש בלי להפעיל את האתחול המיידי של WebView. - אופטימיזציה של הורדת סמל האתר (
WebSettingsCompat#setDownloadFaviconsEnabled): מאפשרת לאפליקציות להשבית את האחזור האוטומטי של סמל האתר במהלך הניווט כדי לצמצם את צריכת הזיכרון ורוחב הפס ברשת. - ניהול טרום-עיבוד (
Profile#getMaxPrerenders/clearMaxPrerenders): נוספו שיטות לאחזור ולשינוי של מספר הטרום-עיבודים המקסימלי המותר בו-זמנית. - מודרניזציה של API וניקויים: הוצא משימוש
SpeculativeLoadingParametersלטובתPrerenderParameters/PrefetchParameters. הוסר הניסויProfile#setOriginMatchedHeader(הוחלף על ידיProfile#addCustomHeaderבגרסה 1.15.0). - כלל Lint למניעת קריסות באופן יזום: מוסיף בדיקת Lint של AndroidX שמסמנת יישומי
onRenderProcessGoneחסרים כשמצורףWebViewClientבהתאמה אישית, כדי לעודד מפתחים לטפל בקריסות של רכיבי עיבוד בצורה חלקה.
גרסה 1.17.0-rc01
29 ביולי 2026
androidx.webkit:webkit:1.17.0-rc01 מופץ. גרסה 1.17.0-rc01 מכילה את השמירות האלה.
לא בוצעו שינויים מאז androidx.webkit:webkit:1.17.0-alpha04
גרסה 1.17.0-alpha04
15 ביולי 2026
androidx.webkit:webkit:1.17.0-alpha04 מופץ. גרסה 1.17.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- הוספנו את
Profile#enqueuePreconnectAPI כדי להוסיף לרשימת ההמתנה בקשות לחיבור מראש בלי להפעיל את האתחול המיידי שלWebView. (Id7e4a, b/511156405) - נוספו
WebSettingsCompat#setDownloadFaviconsEnabledו-WebSettingsCompat#getDownloadFaviconsEnabled, שמאפשרים למפתחים להגדיר או לקבל מידע על הורדה של סמל אתר במהלך ניווט. השבתת ההורדה של סמלי אתרים תביא לירידה בשימוש בזיכרון וברוחב הפס. (I9f87e, b/510229667)
גרסה 1.17.0-alpha03
1 ביולי 2026
androidx.webkit:webkit:1.17.0-alpha03 מופץ. גרסה 1.17.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- נוסף API
HttpCacheשאפשר לגשת אליו דרךProfile#getHttpCache, שמאפשר לשלוח שאילתות ולנהל את מכסת מטמון ה-HTTP של פרופיל. האפשרות הזו יכולה לשפר את הביצועים ואת הזמינות של אפליקציות שמסתמכות במידה רבה על תוכן סטטי שמוצג באינטרנט, או לחלופין לצמצם את השימוש בספריית המטמון במקרים שבהם אין צורך בשמירת מטמון HTTP. כדי להשתמש בתכונה הזו, צריך גרסה M151 שלWebViewאו גרסה מתקדמת יותר. (I40a7f, b/501449506) - הסרנו הערות שגויות לגבי
@RequiresFeatureבתוכןScriptHandlerובתוכןUserAgentMetadata#getFormFactors. (Ib9550)
בדיקות Lint
- נוספה אזהרת lint לגבי קריאה חוזרת (callback) של
onRenderProcessGoneשלא טופלה. הקריאה החוזרת הזו מאפשרת למפתחים להתאושש בצורה חלקה מתהליך רינדור שנסגר, במקום שהאפליקציה שלהם תקרוס. אם נעשה שימוש ב-WebViewClientאבל לא בוצעה החלפה של הקריאה החוזרת הזו, תוצג אזהרה. (Ia4e41)
גרסה 1.17.0-alpha02
17 ביוני 2026
androidx.webkit:webkit:1.17.0-alpha02 מופץ. גרסה 1.17.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו ממשקי API חדשים:
getDownloadFaviconsEnabledו-setDownloadFaviconsEnabled. ממשקי ה-API האלה יאפשרו לכם לקבוע אם סמלי האתר יורדו באופן אוטומטי. (If9224, b/510229667)
שינויים ב-API
- מעדכנים את
prefetchUrlAsyncAPI שמקבל אתPrefetchResultכסוג של קריאה חוזרת (callback) כדי לדווח על משתמשים אם יש בקשת אחזור מראש כפולה. (Icc796, b/483041824) - המאפיין
ExpectedNoVarySearchDataהוצא משימוש ועודכן ל-ExpectedNoVarySearchHint.ignoredQueryParametersו-consideredQueryParametersהופכות לרשימות שלא ניתן לשנות. (I7bb8c, b/491718321)
תיקוני באגים
- תיקנו את ההערות
RequiresFeatureב-ProcessGlobalConfigכדי להפנות אלisStartupFeatureSupportedבמקום אלisConfigFeatureSupportedהשגוי. (I6370b)
גרסה 1.17.0-alpha01
19 במאי 2026
androidx.webkit:webkit:1.17.0-alpha01 מופץ. גרסה 1.17.0-alpha01 מכילה את השמירות האלה.
שינויים ב-API
- נוספה גרסה משופרת של
WebView#loadUrl, WebViewCompat#navigate. בדומה ל-loadUrl, השיטה הזו תטען את כתובת ה-URL שצוינה ב-WebView, אבל היא מציעה את היכולות הנוספות הבאות:- מאפשרת להחליף את הדף הנוכחי בהיסטוריית הניווט.
- מחזירה אובייקט Navigation, שמאפשר למפתח להתאים בין קריאת הניווט לבין קריאות חוזרות (callbacks) של הניווט.
- מטפל בכותרות נוספות בצורה עקבית ומובנת יותר, כולל שמירה ושחזור שלהן כשמשתמשים בשמירת מצב. (Iedefd, b/408128748)
- הוצא משימוש
SpeculativeLoadingParameters. אפליקציות צריכות לעבור לשימוש בהגדרות הספציפיות יותרPrerenderParametersאוPrefetchParametersכדי לשלוט בתכונות של טעינה מראש. (I8afed) - נוספו methods חדשות ל-
Profileלניהול התנהגות של טרום-עיבוד:Profile#getMaxPrerenders()כדי לקבל את המגבלה הנוכחית ו-Profile#clearMaxPrerenders()כדי לאפס אותה לערך ברירת המחדל. (I696ed) - הוסר הניסוי
Profile#setOriginMatchedHeaderוהשיטות שמשויכות אליו. ממשקי ה-API האלה הוחלפו ב-Profile#addCustomHeader, שהושק כ-API יציב בגרסה1.15.0. (Ia7f5c, b/485235632)
גרסה 1.16 של Webkit
גרסה 1.16.0
6 במאי 2026
androidx.webkit:webkit:1.16.0 מופץ. גרסה 1.16.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.15.0:
בגרסה היציבה 1.16.0, מספר ממשקי API כבר לא ניסיוניים, והיא משפרת באופן משמעותי את היציבות ואת חוויית הפיתוח של תכונות כמו הפעלה אסינכרונית של WebView והאזנה לניווט.
הגרסה המינימלית הנתמכת של SDK (minSdk) לספרייה הזו הועלתה ל-24.
- ה-API
startUpWebViewוממשקי API קשורים להגדרת הפעלה אסינכרונית ב-ProcessGlobalConfigוב-WebViewStartUpConfigעברו משלב הניסוי לשלב היציבות. ממשקי ה-API האלה מאפשרים לאפליקציות להפעיל את WebView מוקדם יותר, וכך חלקים מההפעלה רצים ברקע כדי לשפר את מהירות התגובה. הגרסה הקודמת שלstartUpWebViewהוצאה משימוש, והמשתמשים צריכים לעבור לגרסה החדשה, שכוללתWebViewOutcomeReceiverכדי להקל על קריאות חוזרות (callback) במקרה של כשל. - ממשקי ה-API לניווט, כולל
WebViewCompat\#addNavigationListener, NavigationListener, Navigationו-Page, עברו לשלב היציבות. ממשקי ה-API האלה מאפשרים למפתחי אפליקציות לקבל קריאות חוזרות (callback) מ-WebView במהלך השלבים השונים של ניווט בדף דרך הממשקNavigationListener. האפשרות הזו כוללת גם קבלת מדדי ביצועים מהדף, מה שמקל על מפתחי אפליקציות למדוד את הביצועים של דפים מאינטראקציה ישירה באפליקציות שלהם. האובייקטיםNavigationו-Pageמשמשים כמזהים ייחודיים שמקשרים בין הקריאות החוזרות השונות, כשמתבצעות כמה קריאות חוזרות או כמה ניווטים בו-זמנית. אובייקטNavigationמספק גם מידע נוסף על האופי הספציפי של הניווט המתמשך, כולל איך הוא התחיל, והאם הוא הצליח או שהוביל לדף שגיאה, ואילו אובייקטPageמספק את כתובת ה-URL הספציפית. -
WebViewCompat\#saveStateמרחיב את השיטהWebView\#saveStateעם אמצעי בקרה נוספים שמאפשרים למפתחים לציין גודל מקסימלי למצב ולקבוע אם לכלול רשומות של היסטוריית מעברים קדימה. אובייקט המצב שנשמר עדיין תואם ל-WebView\#restoreState - בגרסה הזו של הספרייה מוצגת
WebViewOutcomeReceiverכהטמעה ספציפית לספרייה שלandroid.os.OutcomeReceiver, שמאפשרת לספרייה הזו לספק מנגנון דומה לטיפול בתוצאות של קריאות חוזרות אסינכרוניות בלי להסתמך על ערכים גבוהים יותר שלtargetSdk. השם של המחלקה הזו היהandroidx.webkit.OutcomeReceiverCompatכשהיא הייתה בסטטוס ניסיוני, אבל הוא שונה כדי למנוע התנגשויות עם שמות אחרים. תרומה חיצונית: נוספו ממשקי API חדשים להחדרת
JavaScriptמתמשך כחלק מאירוע טעינת המסמך (WebViewCompat#addJavaScriptOnEvent), להחדרתJavaScriptו-WebMessageListenersאל סביבות מבודדות כדי למנוע התנגשויות עםJavaScriptקיים בדף, ולביצועJavaScriptכתגובה להודעת אינטרנט (JavaScriptReplyProxy#executeJavaScript).ממשקי API ניסיוניים שנוספו מאז גרסה 1.15.0
הוספנו את
WebViewBuilder.applyToAPI להחלת הגדרות של כלי בנייה עלWebViewsשנבנו מראש. כך תוכלו להשתמש ביכולות ההגדרה שלWebViewBuilderAPI, ובהתחייבויות התואמות לכך שההגדרות לא ישתנו, עם אובייקטים קיימים שלWebView. השימוש בשיטה הזו מיועד למקרים שבהם נוצרים מופעים שלWebViewמניפוח פריסה, או למקרים שבהם נוצרים תת-מחלקות שלWebView.
ממשקי API ניסיוניים שעודכנו מאז גרסה 1.15.0
- האובייקט
BackForwardCacheSettingsהשתנה מאובייקט הגדרה שסופק דרךWebSettingsCompatלאובייקט פעיל שאפשר לקבל על ידי קריאה ל-WebSettingsCompat#getBackForwardCacheSettings. לאובייקט יש עכשיו שיטות setter שמעדכנות את ההגדרות ישירות. הוסרה המחלקה הקודמתBuilder, וגםWebSettingsCompat#setBackForwardCacheSettings.. אפליקציות שהשתמשו בעבר ב-methods האלה יחוו שגיאות בנייה במהלך השדרוג. - האפשרות
Profile#setSpeculativeLoadingConfigהוצאה משימוש. במקום זאת, אפשר להשתמש ב-Profile#setMaxPrerenders, ב-PrefetchCache#setMaxPrefetchesוב-PrefetchCache#setPrefetchTtlSeconds. - הוסר
Profile#clearPrefetchAsyncכי הוא לא ביצע פעולה. - שונה סוג ההחזרה של
StartUpLocation.getStackInformation()מ-Stringל-Throwableכדי לאפשר לאפליקציות לעבד את המידע בצורה טובה יותר.
גרסה 1.16.0-rc01
22 באפריל 2026
androidx.webkit:webkit:1.16.0-rc01 מופץ. גרסה 1.16.0-rc01 מכילה את השמירות האלה.
- לא בוצעו שינויים מאז
androidx.webkit:webkit:1.16.0-beta01.
גרסה 1.16.0-beta01
8 באפריל 2026
androidx.webkit:webkit:1.16.0-beta01 מופץ. גרסה 1.16.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- הארגומנט
CallbackExecutorשלProfile.prefetchUrlAsyncהוא עכשיו nullable, וברירת המחדל שלו היא ה-thread הראשי אם לא צוין ערך. (Ib89ef, b/483041824)
גרסה 1.16.0-alpha04
25 במרץ 2026
androidx.webkit:webkit:1.16.0-alpha04 מופץ. גרסה 1.16.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- ה-API
startUpWebViewוממשקי API קשורים להגדרת הפעלה אסינכרונית ב-ProcessGlobalConfigוב-WebViewStartUpConfigעברו משלב הניסוי לשלב היציבות.
הפעלת WebView יכולה להיות תהליך ארוך, ולכן ממשקי ה-API האלה מאפשרים לאפליקציות להפעיל את WebView בזמן הנכון, וכך לוודא שחלקים מהפעלת WebView שיכולים לפעול ברקע אכן יעשו זאת, וישפרו את מהירות התגובה של השימוש הראשון ב-WebView.
ממשקי ה-API האלה פורסמו בעבר כניסיוניים, ועכשיו אפשר להשתמש בהם בלי הערה@OptIn. הגרסה הקודמת שלstartUpWebViewהוצאה משימוש, ומשתמשים ב-API הזה צריכים לעבור לגרסה החדשה, שמשתמשת ב-WebViewOutcomeReceiverכדי להקל על קריאות חוזרות (callback) במקרה של כשל. (Iebb60, I56bf7) - כבר לא צריך להשתמש באנוטציות
@OptInכדי להשתמש ב-Navigation APIs.
כוללWebViewCompat#addNavigationListener, וגם את הממשקNavigationListenerואת המחלקות Navigation ו-Page. שימו לב שהסוגיםNavigationו-Pageהם עכשיו מחלקות ולא ממשקים.
מעכשיו צריך לבדוק את התכונות של ממשקי ה-API האלה באמצעות קבוע התכונה החדשWebViewFeature#NAVIGATION_LISTENER. (I410c8, b/474625648, b/448580228, b/479792864, b/432696062, b/474625648) - הסרת הערת הניסוי מהרכיב
WebViewCompat#saveState. ה-API הזה דומה ל-WebView#saveState, אבל הוא מאפשר למפתח לציין גודל מקסימלי למצב, וגם אם צריך לכלול רשומות של היסטוריית מעברים קדימה. (Ie3fe1, b/389076708) - האפשרות
Profile#setSpeculativeLoadingConfigהוצאה משימוש. במקומה יש להשתמש ב-Profile#setMaxPrerenders,PrefetchCache#setMaxPrefetchesו-PrefetchCache#setPrefetchTtlSeconds. (I9f0f7, I9b977, b/466301565)
גרסה 1.16.0-alpha03
11 במרץ 2026
androidx.webkit:webkit:1.16.0-alpha03 מופץ. גרסה 1.16.0-alpha03 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו ל-
NavigationListenerממשקי API חדשים של מדדי ביצועים באתרים:onFirstContentfulPaintMillis,onLargestContentfulPaintMillisו-onPerformanceMarkMillis. ממשקי ה-API האלה מאפשרים למפתחים לעקוב אחרי המדדים 'הצגת התוכן הראשוני' ו'המהירות שבה נטען רכיב התוכן הכי גדול (LCP)' וסימני ביצועים ישירות באפליקציה שלהם, במקום להשתמש ב-JavaScript כדי לאחזר אותם. (Idb93b, b/432696062) - נוסף מידע על שגיאות לאובייקט Navigation (ניווט). ראו
Navigation#getWebResourceErrorו-WebResourceError#getDebugCode.. אם טעינת הניווט נכשלת בגלל שגיאת רשת, מידע על השגיאה שגרמה לכך זמין עכשיו באובייקט הניווט. (I18bdc, b/474625648) - עדכון של צורת ה-API של הגדרות
BackForwardCacheבאמצעות אובייקטBackForwardCacheSettingsחדש שאפשר לקבל על ידי קריאה ל-WebSettingsCompat#getBackForwardCacheSettings, ואפשר להשתמש בו כדי לשנות כל הגדרה באמצעות שיטות set/get.
הערה: אנחנו מסירים אתWebSetingsCompat#setBackForwardCacheSettingsואתBackForwardCacheSettings.Builder, ולכן השינוי הזה עלול לגרום לשגיאות קומפילציה כשמעדכנים לגרסה הזו אם השתמשתם ב-API שהוסר. (I377f4) - הוספת API לצירוף מידע על ניפוי באגים לבקשת אחזור מראש. (Ibb300, b/474559983)
שינויים ב-API
- הגרסה המינימלית של SDK (minSdk) שנתמכת הועלתה ל-24. אפליקציות שמטרגטות גרסאות SDK מתחת ל-24 יצטרכו לעדכן את גרסת ה-SDK המטרגטת כדי להשתמש בגרסה הזו ובגרסאות עתידיות של הספרייה. (I4df32, b/452708695)
- הסרנו את התכונה הניסיונית
Profile#clearPrefetchAsyncכי היא לא פעלה. זו הייתה פונקציונליות בפיתוח שמעולם לא פעלה. אם אתם צריכים לנקות את המטמון, אנא הגישו בקשה להוספת תכונה. (I341a4, b/483043529) - העברנו את
androidx.webkit.OutcomeReceiverCompatלסטטוס יציב ושינינו את השם שלו ל-WebViewOutcomeReceiver. העותק הספציפי לספרייה של הממשק מאפשר לספרייהwebkitלשמור עלcompileSdk = 33, והשם החדש מונע התנגשויות בשמות. (I0ebf7, I6ef8a, b/487934754) - השתנה סוג ההחזרה של
StartUpLocation.getStackInformation()מ-Stringל-Throwableכדי לאפשר לאפליקציות לעבד את המידע בצורה טובה יותר. (I938d6, b/417434566)
External Contribution
- חדש: ממשקי API ל
- החדרת JavaScript מתמשך כחלק מאירוע טעינת המסמך. התכונה הזו פועלת באופן דומה ל-
WebViewCompat#addDocumentStartJavaScriptהקיים, אבל היא מבטיחה שה-DOM יהיה מוכן כשהסקריפט יפעל. ה-API החדש הואWebViewCompat#addJavaScriptOnEvent. - החדרת JavaScript ו-
WebMessageListeners לעולמות מבודדים, כדי למנוע התנגשויות עם JavaScript קיים בדף. ממשקי ה-API החדשים הםWebViewCompat#addJavaScriptOnEventו-WebViewCompat#addWebMessageListener. - הפעלת JavaScript בתגובה להודעה באינטרנט שנשלחה מדף באותו שילוב של מסגרת/עולם ששלח את ההודעה. ה-API החדש הוא
JavaScriptReplyProxy#executeJavaScript. (I45d92, b/483103617)
- החדרת JavaScript מתמשך כחלק מאירוע טעינת המסמך. התכונה הזו פועלת באופן דומה ל-
גרסה 1.16.0-alpha02
11 בפברואר 2026
androidx.webkit:webkit:1.16.0-alpha02 מופץ. גרסה 1.16.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- נוסף
Page#getUrl()שמחזיר את כתובת ה-URL שמשויכת לאובייקט Page (I0a5d7, b/465339942) - נוסף
WebViewBuilder.applyToAPI להחלת הגדרות של כלי בנייה על רכיבי WebView שנבנו מראש (Iae133, b/463288296)
גרסה 1.16.0-alpha01
14 בינואר 2026
androidx.webkit:webkit:1.16.0-alpha01 מופץ. גרסה 1.16.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו ל-
NavigationListenerממשקי API חדשים של מדדי ביצועים באתרים:onFirstContentfulPaintMillis,onLargestContentfulPaintMillisו-onPerformanceMarkMillis. ממשקי ה-API האלה מאפשרים למפתחים לעקוב אחרי FCP/LCP וסימני ביצועים ישירות באפליקציה שלהם, במקום להשתמש ב-JavaScript כדי לאחזר אותם. (I50266, b/432696062) - מוסיף את
NAVIGATION_LISTENER_NON_NULL_PAGE_FOR_SAME_DOCUMENT_NAVIGATIONSאלWebViewFeature, שאפשר להשתמש בו כדי לקבוע אםNavigation#getPageיחזיר ערך null בניווטים באותו מסמך. (I3a2aa)
תיקוני באגים
- תיקון האפשרות להגדיר פרמטרים של מחרוזות כ-null ב-
getProfilesToLoadDuringStartup(Ic2ce5) - הוספת קבוע לבדיקת תכונה חסרה
WebViewBuilder(I95534)
גרסה 1.15
גרסה 1.15.0
17 בדצמבר 2025
androidx.webkit:webkit:1.15.0 מופץ. גרסה 1.15.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.14.0
בגרסה הזו, רמת ה-API של minSdk עלתה מ-API 21 ל-API 23. בנוסף, ה-API החדש כולל את היכולות הבאות:
- גישה לקובצי Cookie והגדרתם כחלק מ
shouldInterceptRequestקריאות חוזרות (callback) עבור WebView ועובדי שירות. מפתחי אפליקציות שיש להם כרגע גישה ל-APICookieManagerכחלק מ-shouldInterceptRequestיכולים עכשיו להפעיל כותרות של קובצי Cookie ישירות על ידי קריאה ל-WebViewCompat#setCookiesIncludedInShouldInterceptRequest. כתוצאה מכך,WebViewיוסיף כותרתCookieלמיפוי WebResourceRequest.getRequestHeaders(), שתהיה קובצי ה-Cookie המדויקים שרלוונטיים לבקשה. הפעולה הזו תטפל גם בקובצי Cookie עם חלוקה למחיצות. אפליקציות יכולות לספק ערכי כותרת שלSet-Cookieבאמצעות ה-API החדש שנוסף WebResourceResponseCompat#setCookies. הערכים שלSet-Cookieשנוספו שם יעברו עיבוד על ידיWebViewכחלק מטיפול בתשובה. - הגדרת כותרות בקשה בהתאמה אישית. ממשק ה-API Profile#addCustomHeader מאפשר למפתחי אפליקציות להגדיר רשימה של זוגות סטטיים של שם כותרת וערך, שיישלחו בכל הבקשות שתואמות לתבנית המקור שצוינה.
- אפשרות להתאמה אישית של פריטים בתפריט ההקשר של היפר-קישור ב-WebView. באמצעות הקריאה ל-WebViewCompat#setHyperlinkContextMenuItems, מפתחי אפליקציות יכולים לציין אילו פריטים יופיעו בתפריט ההקשר כשמשתמש לוחץ לחיצה ארוכה על היפר-קישור.
- הפעלת רינדור מראש. WebViewCompat#prerenderUrlAsync מאפשר לאפליקציות לבצע טרום-עיבוד של כתובות URL באופן ספקולטיבי לפני שהן מוצגות ב-
WebView. רינדור מראש יכול לשפר באופן משמעותי את ביצועי הטעינה, כי הוא מאחזר את הדף מראש. כשהמשתמש עובר לכתובת ה-URL, הדף שעבר טרום-עיבוד מוצג באופן מיידי. - כדי לשלוט בפרטים של BackForwardCache ב-
WebView, צריך להפעיל את API WebSettingsCompat#setBackForwardCacheSettings. ה-API הזה מאפשר להגדיר את זמן קצוב לתפוגה בשניות או לשנות את המגבלות של מטמון הדפים. - לבסוף, ביטלנו את ההסרה של הכותרת
X-Requested-Withב-WebView, והכותרת תישלח שוב בכל הבקשות. לכן, אין יותר צורך בAPI של רשימת ההיתרים, והוא הוצא משימוש.
ממשקי API ניסיוניים שנוספו מאז גרסה 1.14.0
- בספרייה
WebViewנוספו גם כמה ממשקי API שנמצאים כרגע בסטטוס ניסיוני. מידע נוסף על ממשקי ה-API האלה זמין בסיכום החבילה. אם יש לכם משוב על ממשקי ה-API האלה, אתם יכולים לשלוח אותו באימייל לכתובת android-webview-dev@chromium.org או לשלוח משוב בכלי למעקב אחרי בעיות.
התכונות הבאות הן ניסיוניות:
- ProcessGlobalConfig#setUiThreadStartupMode מאפשר להגדיר את האתחול של שרשור UI של WebView. בפרט, תוכלו לבחור אם ההפעלה תתבצע כמשימה אחת, או שתפוצל למשימות קטנות יותר שיעבירו את השליטה ל-Looper של שרשור ה-UI.
- יוצרים מופעי
WebViewעם הגדרה מוגבלת שלא ניתן לשנות אותה לאחר מכן באמצעות WebViewBuilder API. המשמעות הראשונית היא שעכשיו אפשר להוסיף אובייקטים של ממשק JavaScript שמוזרקים רק לרשימה ספציפית של מקורות, מה שמשפר מאוד את האבטחה של השימוש בהם. הפעולה הזו תשבית גם את כל הקריאות הבאות אלaddJavascriptInterfaceבמופעWebViewשנבנה, וכך תבטיח הגדרה שלא ניתן לשנות. - הרחבנו את ה-API WebViewCompat#startUpWebView:
- עכשיו אפשר לציין קבוצה של פרופילים לטעינה באופן סינכרוני. כך מפתחי אפליקציות יכולים לדלג על טעינה של פרופילים בכלל, או לציין את קבוצת הפרופילים המדויקת שבה האפליקציה משתמשת, כדי לוודא שכולם נטענים.
- עכשיו קל יותר לנפות באגים בהפעלה אסינכרונית באמצעות קריאות חוזרות (callback) של getUiThreadBlockingStartUpLocations ו-getNonUiThreadBlockingStartUpLocations כדי לקבוע מיקומים באפליקציה שבהם ההפעלה של WebView חוסמת את שרשור UI או שרשור ברקע.
- אפשר להגדיר את אופן ההפעלה של האתחול של שרשור ה-UI ב-
WebView.
- כדי להפעיל את התהליך של הכלי לעיבוד עבור פרופיל, קוראים ל-Profile#warmUpRendererProcess. אפליקציות עם
WebViewמחזורי חיים מורכבים יכולות להשתמש ב-API הזה כדי לוודא שתהליך הרינדור פועל, גם אם כל המופעים של WebView נהרסו. - Profile#addQuicHints מאפשר לאפליקציות להנחות את
WebViewלהעדיף QUIC / HTTP3 כשמתחברים למקורות שסופקו. - Profile#preconnect מאפשר לאפליקציות לפתוח חיבור למקור לפני שמנווטים אליו, כדי לזרז את הטעינות העתידיות.
ממשקי API ניסיוניים שעודכנו מאז גרסה 1.14.0
- ה-API Navigation Listener עודכן כדי לאפשר לאפליקציות לספק כמה מופעים של מאזינים, שאפשר להגדיר אותם עם Executor מותאם אישית לקריאות חוזרות של שרשור ברקע. בעבר זה היה WebNavigationClient API, אבל הוא הוצא משימוש ועכשיו יש API חדש. בנוסף, העדכון הזה מוסיף גם מידע על תזמון לקריאה החוזרת onFirstContentfulPaint, ומספק את פרטי הזמן משעת התחלת הניווט ועד לאירוע הציור.
גרסה 1.15.0-rc01
3 בדצמבר 2025
androidx.webkit:webkit:1.15.0-rc01 מופץ. גרסה 1.15.0-rc01 מכילה את השמירות האלה.
- אין עדכונים מאז
androidx.webkit:webkit:1.15.0-beta01
גרסה 1.15.0-beta01
19 בנובמבר 2025
androidx.webkit:webkit:1.15.0-beta01 מופץ. גרסה 1.15.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- הוספה של ממשקי API ניסיוניים של
WebViewBuilder(I06828, b/409740828) - הוספת
UiThreadStartupModeלהפעלה אסינכרונית שעוצרת את הקריאה שלisMultiProcessEnabled()מההפעלה של Chromium (I524ee, b/397372092) - הסתרה של גורם הצורה
UserAgentעד לגרסה 1.16 (Ibac8a, b/430554841, b/454438418) - עדכון של ה-API של הניווט כדי לאפשר לאפליקציות לספק מופעים של
NavigationListener, שאפשר להגדיר אותם עם Executor מותאם אישית לקריאות חוזרות של שרשור ברקע. עכשיו אפשר להוסיף כמה מופעים שלNavigationListenerל-WebViewאחד.
בנוסף, העדכון הזה מוסיף גם מידע על תזמון ל-callbackonFirstContentfulPaint, ומספק את פרטי הזמן משעת התחלת הניווט ועד לאירוע הציור. (I6aa8e, b/448580228) - נוסף
Profile#addQuicHintsשמאפשר לאפליקציות להגדיר ל-WebViewעדיפות ל-QUIC / HTTP3 כשמתחברים למקורות שצוינו. (I8e364, b/445339041) - עדכנו את קבועי התכונות עם הערות ניסיוניות, ועדכנו את קובץ ה-README של הספרייה עם מידע נוסף על ממשקי API ניסיוניים. (I1b914)
תיקוני באגים
- הפצה
androidx.webkit:webkit:1.15.0-beta01(I0b1bd, b/417241552)
גרסה 1.15.0-alpha03
8 באוקטובר 2025
androidx.webkit:webkit:1.15.0-alpha03 מופץ. גרסה 1.15.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- הוספנו API חדש להגדרת כותרות בקשה בהתאמה אישית. זוהי איטרציה של ה-API הניסיוני הקודם, ועכשיו היא מאפשרת לאפליקציה להגדיר כמה ערכים לכל כותרת, כשכל אחד מהם ממופה לקבוצה שונה של דפוסי מקור. בנוסף, ה-API החדש מאפשר לאפליקציה לבדוק את הכותרות שהוגדרו. (Id7d30, b/419469873, b/429269470)
- ההסרה של הכותרת X-Requested-With ב-
WebViewבוטלה, והכותרת תישלח שוב בכל הבקשות כברירת מחדל. אין יותר צורך בממשק ה-API של רשימת ההיתרים, והוא הוצא משימוש. (I884c3, b/447094379) - הוספת API חדש ל-
WebSettingsCompatכדי לאפשר למפתחים להגדיר את המטמון לדף הקודם/הבא שלWebView, למשל להגדיר את הזמן הקצוב לתפוגה בשניות או את מגבלות המטמון של הדף. (I642b2, b/432395269) - הוספת
HyperlinkContextMenuAPI כדי לאפשר התאמה אישית של פריטים בתפריט ההקשר של היפר-קישור ב-WebView(Idb809, b/382654667) - הוספנו
getAsyncStartUpLocationsAPI לניפוי באגים במקרים שבהםWebViewהופעל באופן אסינכרוני בלי להשתמש ב-startUpWebViewAPI. (I6bf4b, b/417434566)
גרסה 1.15.0-alpha02
27 באוגוסט 2025
androidx.webkit:webkit:1.15.0-alpha02 מופץ. גרסה 1.15.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- הוספה של
Profile#preconnectשמאפשרת לאפליקציות לפתוח חיבור למקור לפני שמנווטים אליו, כדי להאיץ את הטעינות העתידיות. (I8db41) - ממשק API חדש של
prerenderUrlAsyncנוסף ל-WebViewCompat, ומאפשר לאפליקציות לבצע טרום-רנדור ספקולטיבי של כתובות URL לפני שהן מוצגות ב-WebView.
רינדור מראש יכול לשפר באופן משמעותי את ביצועי הטעינה על ידי אחזור הדף מראש. כשהמשתמש עובר לכתובת ה-URL, הדף שעבר טרום-עיבוד מוצג באופן מיידי.
ממשקי ה-API האלה פורסמו בעבר כניסיוניים, ועכשיו אפשר להשתמש בהם בלי ההערה@OptIn. (Ie14f5) - עכשיו אפשר לציין קבוצה של פרופילים לטעינה סינכרונית כשקוראים ל-
startUpWebViewAPI. ההגדרה מתבצעת על ידי העברת שמות הפרופילים לשיטה חדשה ב-WebViewStartUpConfig.Builder(I9a6e6) - הוספת API חדש ל-
WebSettingsCompatכדי להפעיל או להשבית את BackForwardCache באובייקטWebSettings. ה-API הזה פורסם בעבר כניסיוני, ועכשיו אפשר להשתמש בו בלי ההערה@OptIn. (Ie413b) - הוספנו תמיכה בביטול של גורמי צורה של User-Agent. למחלקה
UserAgentMetadataיש שיטות חדשות לקבלת גורמי צורה של מטא-נתונים של User-Agent ולהגדרתם. ל-UserAgentMetadata.Builderיש שיטה חדשה,setFormFactors(), לביטול ברירת המחדל של איסוף אותות בצד הלקוח לגבי סוכן משתמש (Sec-CH-UA-Form-FactorsUser-Agent). אפשר לאחזר את ערכי ההחלפה הנוכחיים באמצעות ה-method החדשה getFormFactors(). (I6d08c, b/430554841)
שינויים ב-API
- הוספת API אל
ProcessGlobalConfigכדי להגדיר את האתחול של שרשור ה-UI שלWebView(I5e85a, b/433273850, b/397372092) - הוספת שם תכונה חדש ל-API
WebViewStartupConfig.Builder#setProfilesToLoadDuringStartup(I36451) - העברת ברירת המחדל של minSdk מ-API 21 ל-API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
- עדכון של ה-API של הכותרת שתואמת למקור כדי לאפשר דריסת ערכי כותרת על ידי קריאה ל-
setOriginMatchedHeaderכמה פעמים לאותו שם כותרת. בנוסף, נוספה שיטה חדשה,hasOriginMatchedHeader, לבדיקה אם שם הכותרת כבר נמצא בשימוש.
השינוי הזה מסמן את ה-API כניסיוני, כי כרגע הוא תומך רק בהגדרת ערך יחיד ומיפוי מקור לכל ערך של כותרת. סביר להניח שבעתיד יבוצעו בו שינויים כדי שהוא יתמוך במספר ערכים שממופים למקורות שונים. (I03365, b/419469873, b/429269470) - הדרישה לשרשור UI עבור
Profile#prefetchUrlAsync()הוסרה. עכשיו אפשר להתקשר מכל שרשור. (I83d57) - הממשק
OutcomeReceiverCompatהוסר לטובת הגרסה הרשמיתandroidx.core.os.OutcomeReceiverCompat. עכשיו נדרשת גרסהcompileSdk35 ואילך של הספרייה. (Ie1ea5) - משנה את השם של
[is/set]IncludeCookiesOnShouldInterceptRequestEnabledל-[are/set]CookiesIncludedInShouldInterceptRequestב-WebSettingsCompat. (Ife9e9, b/428924452) - הוספה של הערות API ניסיוניות ל-
Profile.ExperimentalUrlPrefetchשהושמטו קודם לכן. (Ic54eb, b/417458061)
גרסה 1.15.0-alpha01
2 ביולי 2025
androidx.webkit:webkit:1.15.0-alpha01 מופץ. גרסה 1.15.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- API חדש להגדרת זוגות של שם וערך של כותרות HTTP בבקשות למקורות ספציפיים.
השיטהProfile.setOriginMatchedHeaderמאפשרת לאפליקציה לציין ששם הכותרת והערך שלה צריכים להיות מוגדרים בכל בקשות HTTP/HTTPS למקורות שתואמים לרשימת ההיתרים שסופקה, כששולחים אותן מ-WebViews ומ-service workers שמשתמשים בפרופיל הנתון. ה-API מאפשר רק מיפוי אחד לכל שם כותרת, ויציג חריגה אם שם הכותרת כבר מוגדר.
משתמשים בProfile.clearOriginMatchedHeaderכדי להסיר מיפוי קיים, ובProfile.clearAllOriginMatchedHeadersכדי להסיר את כל המיפויים. (Ida7f1, b/419469873) - API חדש לגישה לקובצי Cookie ולהגדרתם כחלק מ
shouldInterceptRequestקריאות חוזרות (callback) ל-WebView ול-Service Workers.
מפתחי אפליקציות שיש להם כרגע גישה ל-CookieManagerAPI כחלק מ-shouldInterceptRequestיכולים עכשיו להפעיל כותרות של קובצי Cookie ישירות על ידי הפעלתsetIncludeCookiesOnShouldInterceptRequest. כתוצאה מכך, WebView יוסיף כותרתCookieלמיפוי WebResourceRequest.getRequestHeaders(), שתהיה בדיוק קובצי ה-Cookie שרלוונטיים לבקשה. הפעולה הזו תטפל גם בכל קובצי ה-Cookie עם חלוקה למחיצות.
אפליקציות יכולות לספק ערכי כותרתSet-Cookieבאמצעות ה-API החדשWebResourceResponseCompat.setCookies. הערכיםSet-Cookieשנוספו שם יעברו עיבוד על ידי WebView כחלק מהטיפול בתגובה. (Idbfd1, b/414769380) - API ניסיוני חדש לחימום תהליך העיבוד של
Profile.
אפליקציות עם מחזורי חיים מורכבים של WebView יכולות להשתמש ב-API הזה כדי לוודא שתהליך הרינדור פועל, גם אם כל המופעים של WebView הושמדו. (Ia8fc8)
שינויים ב-API
- הוספנו שיטה חדשה לממשק הניסיוני Navigation כדי לספק את כתובת ה-URL של הניווט. (I1c6c0)
- עדכון השם של התכונה Profile Prefetch כדי להבהיר שאפשר להפעיל עכשיו את Prefetch API בשרשור ברקע. (I7c83a)
גרסה 1.14
גרסה 1.14.0
4 ביוני 2025
androidx.webkit:webkit:1.14.0 מופץ. גרסה 1.14.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.13.0
- השקנו את
PaymentRequestAPI להפעלת אפליקציות מקומיות של Android לתשלום באמצעות כוונתorg.chromium.intent.action.PAY.PaymentRequestמושבת כברירת מחדל, ואפליקציות מארחות שלWebViewיכולות להתקשר אל WebSettingsCompat.setPaymentRequestEnabled(settings, true) כדי להפעיל אותו. בנוסף, התגPaymentRequestדורש תג<queries>ב-AndroidManifest.xml. מידע נוסף זמין במאמרי העזרה בנושאsetPaymentRequestEnabled(). - אנחנו משיקים את Navigation API (ממשק ניווט) הניסיוני לשיפור המעקב אחר ניווט באתרים וניהול הניווט בתוך
WebView. ממשקי ה-API האלה מספקים מידע מפורט על אירועי ניווט. כדי להתחיל, מתקשרים אל WebViewCompat.setNavigationClient עם הטמעה של הממשק החדש WebNaviagationClient כדי לקבל מידע מפורט על הניווט בדף. מידע נוסף על מחזור החיים של הניווט זמין במאמר Life of a Navigation Presentation (מחזור החיים של מצגת ניווט).
גרסה 1.14.0-rc01
20 במאי 2025
androidx.webkit:webkit:1.14.0-rc01 מופץ. גרסה 1.14.0-rc01 מכילה את השמירות האלה.
- אין שינויים מגרסה
1.14.0-beta01.
גרסה 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 מכילה את השמירות האלה.
תכונות חדשות
- השקנו את
PaymentRequestAPI להפעלת אפליקציות מקומיות של Android לתשלום באמצעות כוונתorg.chromium.intent.action.PAY.PaymentRequestמושבת כברירת מחדל, ואפליקציות מארחות של WebView יכולות לקרוא ל-WebSettingsCompat.setPaymentRequestEnabled(settings, true)כדי להפעיל אותו. בנוסף, התגPaymentRequestדורש תג<queries>ב-AndroidManifest.xml. מידע נוסף זמין במאמרי העזרה בנושאsetPaymentRequestEnabled(). (I3304e, b/404920055) - חדש: קריאות חוזרות (callback) לניווט ניסיוני. בגרסה הזו אנחנו משיקים ממשקי API ניסיוניים לשיפור המעקב אחר ניהול הניווט באינטרנט בתוך
WebView. ממשקי ה-API האלה מספקים מידע מפורט על אירועי ניווט. תכונות עיקריות:WebNavigationClientממשק: נוסף ממשק חדש,WebNavigationClient, עם קריאות חוזרות לאירועי ניווט:-
onNavigationStarted(Navigation navigation): התראה כשמתחילים בניווט. -
onNavigationRedirected(Navigation navigation): מודיע כשניווט מנותב מחדש. -
onNavigationCompleted(Navigation navigation): הודעה על סיום הניווט. Navigationממשק: מספק מידע מפורט על ניווט, כולל: כתובת URL, סטטוס הפעלת הדף, סטטוס של אותו מסמך, סטטוס טעינה מחדש, סטטוס היסטוריה, סטטוס חזרה/מעבר קדימה, סטטוס ביצוע, סטטוס דף שגיאה, קוד סטטוס וסטטוס שחזור סשן. האובייקטNavigationמשמש כמזהה ייחודי לכל ניווט, ומאפשר למפתחים ליצור קורלציה בין אירועי ניווט קשורים.-
Pageclass: הצגת המחלקהPage, שמשמשת כמפתח לנתונים שמשויכים לדף. (I351a6)
- השקנו API ניסיוני חדש כדי להחליף את ההתנהגות של אובייקטים של ספק מטמון. (I14636)
שינויים ב-API
- העדכון של ערך התכונה
PROFILE_URL_PREFETCHבוצע ב-WebViewFeature. (I606fd) - הפונקציה מוסיפה
WebViewCompat#saveState, בדומה ל-WebView#saveState, אבל מאפשרת להגביל את הגודל של המצב שמוחזר ולקבוע אם לשמור רשומות של היסטוריית מעברים קדימה. (Iea7d6) - הוספת הגדרה
maxPrerendersל-APISpeculativeLoadingConfig(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, כי הם מבטיחים מחיקה של כל האחסון המקומי, כולל מטמון הרשת וקובצי Cookie, וגם של כל עובדי השירות המותקנים. אם בעתיד יושקו ממשקי API חדשים לאחסון, השיטות החדשות האלה יעודכנו כך שיכללו אותם באחסון שנמחק. (Iad54f, b/382273208) - הוספת
setPartitionedCookiesEnabledAPI. כך המפתחים יוכלו להפעיל ולהשבית קובצי Cookie מחולקים ב-WebView. (Ic506a, b/364904765) - הוספת socket tagging API ל-
WebViewלצורך דיווח על תנועת הרשת שלWebViewבאמצעותNetworkStatsManager/TrafficStats. התכונה הזו תהיה זמינה רק מ-WebViewM133. (Ica441, b/374932688) - הוספנו API ניסיוני להפעלה אסינכרונית של
WebView. (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 ל-prerender API. משנים את השם של כל נתון ל'כותרת' ב-
NoVarySearchכדי לשקף את השם החדש. (Ie91c9) - הוספת פרמטר של executor ל-API של רינדור מראש של כתובות URL. בנוסף, הגבלת ה-API כך שניתן יהיה לקרוא לו רק משרשור UI. (I50520)
- מוסיפים API כדי להגדיר את הגדרות המטמון לבקשות לאחזור מראש של הפרופיל. ההגבלה חלה גם על בקשות Prerender שנוצרות מ-
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, כי הם מבטיחים מחיקה של כל האחסון המקומי, כולל מטמון הרשת וקובצי Cookie, וגם של כל עובדי השירות המותקנים. אם בעתיד יושקו ממשקי API חדשים לאחסון, השיטות החדשות האלה יעודכנו כך שיכללו אותם באחסון שנמחק. (Iad54f, b/382273208) - הוספת
setPartitionedCookiesEnabledAPI. כך המפתחים יוכלו להפעיל ולהשבית קובצי Cookie מחולקים ב-WebView. (Ic506a, b/364904765)
שינויים ב-API
- שינוי הדרישה לשרשור עבור Prefetch API כך שניתן יהיה לקרוא לו רק בשרשור UI. (I866b5)
- מעדכנים את רכיבי ה-method
WebAuthnכדי להדגיש שצריך להפעיל אותם בשרשור UI. הדרישה הזו כבר נאכפת על ידי ההטמעה, והשינוי הזה מוסיף רק את ההערה הרלוונטית. (I6d6ba)
גרסה 1.13.0-alpha02
11 בדצמבר 2024
androidx.webkit:webkit:1.13.0-alpha02 מופץ. גרסה 1.13.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- הוספת socket tagging API ל-
WebViewלצורך דיווח על תנועת הרשת שלWebViewבאמצעותNetworkStatsManager/TrafficStats. התכונה הזו תהיה זמינה רק מ-WebViewM133. (Ica441, b/374932688)
שינויים ב-API
- עדכון Prefetch API על ידי שינוי השם של
PrefetchParameterל-SpeculativeLoadingParamaters, הוספתPrefetchNetworkExceptionחדש, החלפתPrefetchOperationCallbackב-OutcomeReceiverCompatועדכון ה-Javadoc. (If5072) - קבלת נתוני אבחון מ-WebView async startup API.
- צריך לספק לאפליקציות אפשרות להפעיל רק את הפונקציה init שלא חוסמת את שרשור ה-UI. (I9bf2b)
תיקוני באגים
- הספרייה הזו משתמשת עכשיו באנוטציות של JSpecify nullness, שהן מסוג type-use. מפתחי Kotlin צריכים להשתמש בארגומנט המהדר הבא כדי לאכוף שימוש נכון:
-Xjspecify-annotations=strict(זו ברירת המחדל החל מגרסה 2.1.0 של מהדר Kotlin). (I0e4c5, b/326456246)
גרסה 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. מפתחים יכולים להפעיל או להשבית שיחותWebAuthnWebViewבאפליקציות שלהם באמצעות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 מומלץ לעדכן לגרסה 8.1 של D8 או לגרסה מאוחרת יותר. למידע נוסף, מומלץ לעיין במאמר הזה. (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) - שיטות שמאפשרות שימוש ב-Thread מתועדות עכשיו עם
@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. בעזרתWebSettingsCompat#setWebAuthenticationSupport, מנהלי מערכת יכולים להפעיל או להשבית קריאות ל-WebAuthnבאפליקציות שלהם ב-WebView. (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. בנוסף, ה-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 מכילה את השמירות האלה.
תכונות חדשות
- הוספת methods
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. בנוסף, ה-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. - ה-API החדש ProfileStore מאפשר לכם לנהל את הפרופילים שזמינים באפליקציה, כולל פרופיל ברירת המחדל.
- ממשקי WebView API קיימים, כמו CookieManager#getInstance, ימשיכו לפעול בפרופיל ברירת המחדל.
- נוסף API להחדרה ולהרצה של JavaScript לפני טעינת הדף.
- API WebViewCompat#addDocumentStartJavascript מאפשר לאפליקציות להחדיר סקריפטים ל-
WebView, שמופעלים בוודאות לפני הפעלת סקריפטים בדף. ה-API מאפשר לאפליקציה לציין רשימת יעד של מקורות להפעלת הסקריפט, וכך לוודא שהוא פועל רק בדפים הרצויים. בניגוד ל-WebView#evaluateJavascript, ממשק ה-API הזה יאפשר הפעלה של סקריפטים ב-Iframes מוטמעים כשהם נטענים. אפליקציות יכולות להשתמש ב-API החדש הזה בשילוב עם WebViewCompat#addWebMessageListener כדי להגדיר תקשורת דו-כיוונית עם JavaScript בדף בצורה מהימנה.
- API WebViewCompat#addDocumentStartJavascript מאפשר לאפליקציות להחדיר סקריפטים ל-
- נוספו ממשקי API לשינוי האופן שבו נרשמים אירועים של שיוך (Attribution) בדוחות של ארגז החול לפרטיות.
- השקנו ממשק API חדש WebSettingsCompat#setAttributionRegistrationBehavior שמאפשר למפתחים להגדיר אם מקורות וטריגרים של שיוך נרשמים ככאלה שמגיעים מהאפליקציה עצמה או ככאלה שמגיעים מתוכן האינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את Attribution Reporting ב-WebView. בנוסף, הוספנו API חדש
WebSettingsCompat#getAttributionRegistrationBehaviorכדי לקבל את ההתנהגות הנוכחית. - מידע נוסף זמין במסמכי התיעוד בנושא ארגז החול לפרטיות.
- השקנו ממשק API חדש WebSettingsCompat#setAttributionRegistrationBehavior שמאפשר למפתחים להגדיר אם מקורות וטריגרים של שיוך נרשמים ככאלה שמגיעים מהאפליקציה עצמה או ככאלה שמגיעים מתוכן האינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את Attribution Reporting ב-WebView. בנוסף, הוספנו API חדש
- נוספו ממשקי API כדי לבטל את המטא-נתונים של סוכן המשתמש עבור רמזים על הלקוח (Client Hints).
- הוספנו 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 של מטא-נתונים של user-agent. אנחנו מעדכנים את המחלקה
BrandVersionכדי להשתמש בתבנית builder, ודואגים שעקביות מאפיין המציין אם ערך יכול להיות ריק (nullability) בשיטות getter ו-setter של המחלקהUserAgentMetadataתהיה עקבית. (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ולאחזר אותם מאוחר יותר לכל גישה לנתונים. יש מחלקה מסוג singletonProfileStoreשעוזרת לכם לנהל פרופילים באמצעות יצירה או מחיקה עם ממשקי API:getOrCreateProfile, getProfile, getAllProfileNamesו-deleteProfile. למחלקתProfileיהיו ממשקי API שונים שאפשר להשתמש בהם כדי לקבל נתונים שמשויכים לפרופיל הזה, כמו השם,GeoLocationPermissions,ServiceWorkerController,CookieManagerו-WebStorage. כלWebViewיפעל עם פרופיל ברירת המחדל, אבל אפשר לשנות את זה באמצעותWebViewCompat#setProfile. בנוסף, אפשר לאחזר את הפרופיל שלWebViewבאמצעותWebViewCompat#getProfile. (I32d22) - הוספת ממשקי API כדי לשנות את אופן הרישום של אירועים בדוחות שיוך. השקנו API חדש
WebSettingsCompat#setAttributionRegistrationBehaviorשמאפשר למפתחים להגדיר אם המקורות והטריגרים רשומים ככאלה שמגיעים מהאפליקציה עצמה או מתוכן האינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את Attribution Reporting ב-WebView. בנוסף, הוספנו API חדשWebSettingsCompat#getAttributionRegistrationBehaviorכדי לקבל את ההתנהגות הנוכחית. מידע נוסף זמין במסמכי התיעוד בנושא ארגז החול לפרטיות. (I661f2) - הוספת ממשקי API כדי לבטל את המטא-נתונים של סוכן המשתמש. השקנו API חדש,
WebSettingsCompat#setUserAgentMetadata, כדי לבטל את המטא-נתונים של סוכן המשתמש ב-WebView, שמשמש לאכלוס הרמזים של סוכן המשתמש, והוספנו גם API חדש נוסף,WebSettingsCompat#getUserAgentMetadata, כדי לקבל את הביטולים הנוכחיים של סוכן המשתמש. מומלץ לאפליקציות להשתמש ב-API החדש כדי להגדיר את ערכי הביטול הנכונים במקום להסתמך על שינוי של סוכן המשתמש. (I74500) - מוסיפים API להחדרת JavaScript להפעלה במהלך טעינת הדף.
WebViewCompat.addDocumentStartJavascriptAPI מאפשר לאפליקציות להחדיר סקריפטים ל-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
- הוספת תמיכה בהעברת
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
- אפשר לעיין בקטע 'תוכן חיצוני'.
External Contribution
- הוספת תמיכה בהעברת
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החדש למניפסט של האפליקציה, כמו שמתואר במסמכי התיעוד של המחלקה. - הוספנו את
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)API שאפשר להשתמש בו כדי להגדיר את ספריות הבסיס ש-WebViewישתמש בהן בתהליך הנוכחי. כמו בכל ה-methods ב-ProcessGlobalConfig, צריך להפעיל את ה-method הזו לפני שיוצרים את המופע הראשון של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
- שינוי קל ב-feature 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החדש למניפסט של האפליקציה. (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
- נוסף API חדש בשם ProcessGlobalConfig כדי לאפשר לאפליקציות לספק הגדרות שצריך להגדיר לפני טעינת WebView, כמו הסיומת של ספריית הנתונים של WebView. צריך להגדיר את התצורה ולהחיל אותה מוקדם ככל האפשר במהלך הפעלת האפליקציה, כדי לוודא שהיא מתבצעת לפני שכל שרשור אחר יכול להפעיל שיטה שמעמיסה את
WebViewלתהליך. - נוסף API חדש בשם CookieManagerCompat כדי להרחיב את android.webkit.CookieManager עם שיטה חדשה בשם
getCookieInfo, שמחזירה את כל המאפיינים של כל קובצי ה-Cookie שהוגדרו בכתובת URL ספציפית. הוא שונה מ-getCookie API הקיים ב-CookieManagerשמחזיר רק את מאפייני השם והערך של קובצי ה-Cookie. - ב-
WebSettingsCompatיש שיטות חדשות להפעלה או השבתה של ההשפעה שלEnterpriseAuthenticationAppLinkPolicyאם היא מוגדרת על ידי אדמין ב-WebView, וגם שיטות לקבלת ההגדרה הנוכחית. התכונה הזו מאפשרת ל-WebView לפתוח אפליקציה לאימות חשבונות במקום לפתוח את כתובת ה-URL לאימות. התכונה הזו לא משפיעה על מכשירים שלא מנוהלים על ידי מדיניות ארגונית. - הוספנו API חדש ל-
WebSettingsCompatכדי לאפשר לאפליקציות לשלוח באופן מפורש את שם חבילת ה-APK של האפליקציה בכותרת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השתנה כך שישתמש ב-constructor רגיל ובשיטת apply סטטית. אפשר להפעיל את ה-method apply רק פעם אחת לכל תהליך, מוקדם ככל האפשר. אם מפעילים אותה יותר מפעם אחת, היא תחזירIllegalStateException. ל-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 חדש שמאפשר לאפליקציות לשלוח במפורש את שם חבילת ה-APK של האפליקציה בכותרת X-Requested-With למקורות שרשומים ברשימת ההיתרים. באופן מסורתי, הכותרת נשלחת בכל בקשה מ-
WebView. (I0adfe, b/226552535)
שינויים ב-API
-
WebSettingsCompat#setAlgorithmicDarkeningAllowedAPI נתמך בכל גרסאות 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יחד עם APIgetCookieInfoשמחלץ את כל המאפיינים של כל העוגיות שהוגדרו בכתובת URL ספציפית. הוא שונה מ-getCookieAPI הקיים ב-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. (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(). כך האפליקציות יכולות לעדכן את הקוד שלהן כדי להימנע משימוש בטרמינולוגיה לא מכלילה, ועדיין לתמוך באותו טווח של גרסאות 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
- הוספנו API חדש,
WebViewCompat#setSafeBrowsingAllowlist(), כדי להחליף את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.
-
isMultiProcessEnabledAPI לבדיקה אם WebView פועל בריבוי תהליכים. האפשרות הזו זמינה החל מ-Android O, והיא מאפשרת להציג תוכן אינטרנט בתהליך עיבוד ארגז חול נפרד מתהליך האפליקציה. יכול להיות שהכלי לעיבוד ב-Sandbox ישותף עם רכיבי 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 מכילה את השמירות האלה.
תכונות חדשות
ForceDarkStrategyAPI לשליטה בהכהיית WebView (הכהיית CSS/תוכן אינטרנט לעומת הכהיה אוטומטית).WebMessageListenerממשקי API מספקים מנגנון פשוט ומאובטח ליצירת תקשורת בין תוכן אינטרנט לבין אפליקציית ההטמעה של WebView.-
MultiProcessEnabledAPI לבדיקה אם WebView פועל במצב ריבוי תהליכים.
גרסה 1.3.0-alpha03
27 במאי 2020
androidx.webkit:webkit:1.3.0-alpha03 מופץ. גרסה 1.3.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- ה-method
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 מכילה את השמירות האלה.
תכונות חדשות
ForceDarkStrategyAPI לשליטה בהחשכה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
- ממשקי API של Getter כדי להשלים את setWebViewClient() ו-setWebChromeClient().
- ProxyController API כדי להגדיר שרת proxy לבקשה לאחזור מהרשת עבור תצוגות 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 (ולא null) אם אי אפשר לנחש את סוג ה-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 מופץ. כאן אפשר לראות את השמירות שכלולות בגרסה הזו.
תכונות חדשות
- ממשקי API של Getter להשלמת
setWebViewClient()ו-setWebChromeClient() - ProxyController API כדי להגדיר שרת proxy לבקשה לאחזור מהרשת עבור תצוגות WebView של אפליקציה.
- AssetLoader API כדי לפשט את הטעינה של נכסים ומשאבים של APK באמצעות חסימת בקשות, וכך לאפשר גישה למשאבי אינטרנט בלי להשבית את CORS.
- TracingController API כדי לאסוף מידע על מעקב אחר WebView לצורך ניפוי באגים.
- ממשקי RenderProcess API לניהול שירותי רכיבי WebView ולזיהוי מקרים שבהם תוכן בעייתי גורם לרכיבי WebView לא להגיב.
תיקוני באגים
- תיקונים קלים בעיצוב של מסמכי העזרה של ממשקי API קיימים.