Webkit

עבודה עם ממשקי API מודרניים של WebView ב-Android מגרסה 5 ואילך.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫9 בספטמבר 2026 1.17.0 - - ‎1.18.0-alpha01

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

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

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

מגניב

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

Kotlin

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

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

משוב

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

יצירת דיווח על בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.

גרסה 1.18

גרסה ‎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.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#enqueuePreconnect API כדי להוסיף לרשימת ההמתנה בקשות לחיבור מראש בלי להפעיל את 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

  • מעדכנים את prefetchUrlAsync API שמקבל את 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

  • הוספנו את WebViewCompat#navigate, גרסה משופרת של WebView#loadUrl. בדומה ל-loadUrl, השיטה הזו תטען את כתובת ה-URL שצוינה ב-WebView, אבל היא מציעה את היכולות הנוספות הבאות:
    • מאפשר להחליף את הדף הנוכחי בהיסטוריית הניווט.
    • מחזירה אובייקט Navigation, שמאפשר למפתח להתאים בין קריאת הניווט לבין קריאות חוזרות של ניווט.
    • טיפול בעוד כותרות בצורה עקבית ומובנת יותר, כולל שמירה ושחזור שלהן כשמשתמשים בשמירת מצב. (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 האלה מאפשרים למפתחי אפליקציות לקבל קריאות חוזרות מ-WebView במהלך השלבים השונים של ניווט בדף דרך הממשק NavigationListener. האפשרות הזו כוללת גם קבלת מדדי ביצועים מהדף, מה שמקל על מפתחי אפליקציות למדוד את הביצועים של דפים מאינטראקציה ישירה באפליקציות שלהם. האובייקטים Navigation ו-Page משמשים כמזהים ייחודיים שמקשרים בין הקריאות החוזרות השונות, במקרים שבהם יכול להיות שמתבצעות כמה תצוגות WebView או כמה פעולות ניווט בו-זמנית. אובייקט 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

  • הוספנו API‏ WebViewBuilder.applyTo להחלת הגדרות של כלי בנייה על WebViews שנבנו מראש. כך תוכלו להשתמש ביכולות ההגדרה של WebViewBuilder API, ובהתחייבויות התואמות לכך שההגדרות לא ישתנו, עם אובייקטים קיימים של WebView. השימוש בשיטה הזו מיועד למקרים שבהם נוצרים מופעים של WebView מניפוח פריסה, או למקרים שבהם נוצרים תת-מחלקות של WebView.

ממשקי API ניסיוניים שעודכנו מאז גרסה 1.15.0

  • האובייקט BackForwardCacheSettings השתנה מאובייקט הגדרה שסופק דרך WebSettingsCompat לאובייקט פעיל שאפשר לקבל על ידי קריאה ל-WebSettingsCompat#getBackForwardCacheSettings. לאובייקט יש עכשיו שיטות setter שמעדכנות את ההגדרות ישירות. הוסרה המחלקה המקוננת Builder הקודמת, וגם WebSettingsCompat#setBackForwardCacheSettings. אפליקציות שהשתמשו בעבר ב-methods האלה יחוו שגיאות build במהלך השדרוג.
  • האפשרות 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, וברירת המחדל שלו היא השרשור הראשי אם לא צוין ערך. (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 כדי להשתמש בממשקי ה-API של הניווט.
    הקטע הזה מתייחס ל-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 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו ממשקי API חדשים למדדי ביצועים באתרים onFirstContentfulPaintMillis, onLargestContentfulPaintMillis ו-onPerformanceMarkMillis עד NavigationListener. ממשקי ה-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)

חישוב צריכת הנתונים

  • חדש: ממשקי API חדשים ל-
    • החדרת JavaScript מתמשך כחלק מאירוע טעינת המסמך. התכונה הזו פועלת באופן דומה ל-WebViewCompat#addDocumentStartJavaScript הקיים, אבל היא מבטיחה שה-DOM יהיה מוכן כשהסקריפט יפעל. ממשק ה-API החדש הוא WebViewCompat#addJavaScriptOnEvent.
    • החדרת JavaScript ו-WebMessageListener לעולמות מבודדים, כדי למנוע התנגשויות עם JavaScript קיים בדף. ממשקי ה-API החדשים הם WebViewCompat#addJavaScriptOnEvent ו-WebViewCompat#addWebMessageListener.
    • הפעלת JavaScript בתגובה להודעת אינטרנט שנשלחה מדף באותו שילוב של מסגרת/עולם ששלח את ההודעה. ממשק ה-API החדש הוא JavaScriptReplyProxy#executeJavaScript. (I45d92, ‏ b/483103617)

גרסה ‎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.applyTo API להחלת הגדרות של Builder על רכיבי WebView שנבנו מראש (Iae133, ‏ b/463288296)

גרסה ‎1.16.0-alpha01

‫14 בינואר 2026

androidx.webkit:webkit:1.16.0-alpha01 מופץ. גרסה ‎1.16.0-alpha01 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו ממשקי API חדשים למדדי ביצועים באתרים onFirstContentfulPaintMillis, onLargestContentfulPaintMillis ו-onPerformanceMarkMillis עד NavigationListener. ממשקי ה-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 והגדרה שלהם כחלק מקריאות חוזרות (callback) של shouldInterceptRequest עבור WebView ועובדי שירות. מפתחי אפליקציות שיש להם כרגע גישה ל-API‏ CookieManager כחלק מ-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. רינדור מראש יכול לשפר באופן משמעותי את ביצועי הטעינה, כי הוא מאחזר את הדף מראש. כשהמשתמש עובר לכתובת האתר, הדף שעבר טרום-עיבוד מוצג באופן מיידי.
  • כדי לשלוט בהגדרות הספציפיות של BackForwardCache ב-WebView, צריך להפעיל את API‏ WebSettingsCompat#setBackForwardCacheSettings. באמצעות ה-API הזה אפשר להגדיר את הזמן הקצוב לתפוגה בשניות או לשנות את המגבלות של מטמון הדפים.
  • לבסוף, ביטול ההסרה של הכותרת X-Requested-With ב-WebView, והכותרת תישלח שוב בכל הבקשות. לכן, אין יותר צורך ב-allowlist API, והוא הוצא משימוש.

ממשקי API ניסיוניים שנוספו מאז גרסה 1.14.0

התכונות הבאות הן ניסיוניות:

  • 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 עודכן כדי לאפשר לאפליקציות לספק כמה מופעים של 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 להפעלה אסינכרונית שמונעת את ההפעלה של Chromium בשיחה isMultiProcessEnabled() (I524ee, ‏ b/397372092)
  • הסתרה של גורם הצורה UserAgent עד לגרסה 1.16 (Ibac8a, ‏ b/430554841, ‏ b/454438418)
  • עדכון של Navigation API כדי לאפשר לאפליקציות לספק מופעים של NavigationListener, שאפשר להגדיר אותם עם Executor מותאם אישית לקריאות חוזרות (callback) של שרשור ברקע. עכשיו אפשר להוסיף כמה מופעים של NavigationListener ל-WebView אחד.
    בנוסף, העדכון הזה מוסיף גם מידע על תזמון ל-callback‏ onFirstContentfulPaint, ומספק את פרטי הזמן משעת התחלת הניווט ועד לאירוע הציור. (I6aa8e, ‏ b/448580228)
  • מוסיף את Profile#addQuicHints שמאפשר לאפליקציות להגדיר ל-WebView עדיפות ל-QUIC / HTTP3 כשמתחברים למקורות שצוינו. (I8e364, b/445339041)
  • עדכנו את הקבועים של התכונות עם הערות ניסיוניות, ועדכנו את קובץ ה-README של הספרייה עם מידע נוסף על ממשקי API ניסיוניים. (I1b914)

תיקוני באגים

גרסה ‎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)
  • הוספת HyperlinkContextMenu API כדי לאפשר התאמה אישית של פריטים בתפריט ההקשר של היפר-קישור WebView (Idb809, ‏ b/382654667)
  • הוספנו getAsyncStartUpLocations API לניפוי באגים במקרים שבהם WebView הופעל באופן אסינכרוני בלי להשתמש ב-startUpWebView API. (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. ה-API הזה מאפשר לאפליקציות לבצע טרום-עיבוד (prerender) של כתובות URL באופן ספקולטיבי לפני שהן מוצגות ב-WebView.
    רינדור מראש יכול לשפר באופן משמעותי את ביצועי הטעינה על ידי אחזור הדף מראש. כשהמשתמש עובר לכתובת האתר, הדף שעבר טרום-עיבוד מוצג באופן מיידי.
    ממשקי ה-API האלה פורסמו בעבר כניסיוניים, ועכשיו אפשר להשתמש בהם בלי ההערה @OptIn. (Ie14f5)
  • עכשיו אפשר לציין קבוצה של פרופילים לטעינה סינכרונית כשקוראים ל-startUpWebView API. ההגדרה מתבצעת על ידי העברת שמות הפרופילים לשיטה חדשה ב-WebViewStartUpConfig.Builder (I9a6e6)
  • מוסיפים API חדש ל-WebSettingsCompat כדי להפעיל או להשבית את BackForwardCache באובייקט WebSettings. ה-API הזה פורסם בעבר כניסיוני, ועכשיו אפשר להשתמש בו בלי ההערה @OptIn. (Ie413b)
  • הוספנו תמיכה בביטול של גורמי צורה של User-Agent. למחלקה UserAgentMetadata יש שיטות חדשות לקבלת גורמי צורה של מטא-נתונים של User-Agent ולהגדרתם. ל-UserAgentMetadata.Builder יש שיטה חדשה, setFormFactors(), לביטול של רמז הלקוח (Client Hint) לגבי סוכן המשתמש Sec-CH-UA-Form-Factors. אפשר לאחזר את ערכי ההחלפה הנוכחיים באמצעות השיטה החדשה getFormFactors(). (I6d08c, b/430554841)

שינויים ב-API

  • הוספת API ל-ProcessGlobalConfig כדי להגדיר את האתחול של שרשור UI של WebView (I5e85a, ‏ b/433273850, ‏ b/397372092)
  • הוספת שם תכונה חדש ל-WebViewStartupConfig.Builder#setProfilesToLoadDuringStartup API ‏ (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. הספרייה דורשת עכשיו גרסה compileSdk 35 ואילך. (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 callbacks עבור WebView ו-Service Workers.
    מפתחי אפליקציות שיש להם כרגע גישה ל-CookieManager API כחלק מ-shouldInterceptRequest יכולים עכשיו להפעיל כותרות של קובצי Cookie ישירות על ידי הפעלת setIncludeCookiesOnShouldInterceptRequest. כתוצאה מכך, WebView יוסיף כותרת Cookie למפה WebResourceRequest.getRequestHeaders(), שתכלול את קובצי ה-Cookie המדויקים שרלוונטיים לבקשה. הפעולה הזו תטפל גם בכל קובצי ה-Cookie עם חלוקה למחיצות.
    אפליקציות יכולות לספק ערכי כותרת Set-Cookie באמצעות ה-API החדש WebResourceResponseCompat.setCookies. המערכת תעבד את הערכים של Set-Cookie שנוספו שם כחלק מהטיפול בתגובה. (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

  • אנחנו משיקים את PaymentRequest API להפעלת אפליקציות מקומיות של 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 מכילה את השמירות האלה.

תכונות חדשות

  • אנחנו משיקים את PaymentRequest API להפעלת אפליקציות מקומיות של 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 משמש כמזהה ייחודי לכל ניווט, ומאפשר למפתחים ליצור קורלציה בין אירועי ניווט קשורים.
    • Page class: מציג את Page class, שמשמש כמפתח לנתונים שמשויכים לדף. (I351a6)
  • השקנו API ניסיוני חדש כדי להחליף את ההתנהגות של אובייקטים של ספק מטמון. (I14636)

שינויים ב-API

  • העדכון של ערך התכונה PROFILE_URL_PREFETCH בוצע ב-WebViewFeature. (I606fd)
  • הפונקציה מוסיפה WebViewCompat#saveState, בדומה ל-WebView#saveState, אבל מאפשרת להגביל את הגודל של המצב שמוחזר ולקבוע אם לשמור רשומות של היסטוריית התקדמות. (Iea7d6)
  • הוספת הגדרות maxPrerenders ל-API‏ SpeculativeLoadingConfig (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 חדשים לאחסון, השיטות החדשות האלה יעודכנו כך שיכללו אותם באחסון שנמחק. (Iad54f, b/382273208)
  • מוסיפים את setPartitionedCookiesEnabled API. כך המפתחים יוכלו להפעיל ולהשבית קובצי Cookie מחולקים ב-WebView. ‫(Ic506a, ‏ b/364904765)
  • הוספת socket tagging API ל-WebView לצורך דיווח על תנועת הרשת של WebView באמצעות NetworkStatsManager/TrafficStats. התכונה הזו תהיה זמינה רק מ-WebView M133. (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, כי הם מבטיחים מחיקה של כל האחסון המקומי, כולל מטמון הרשת ועוגיות, וגם של כל עובדי השירות המותקנים. אם בעתיד יושקו ממשקי API חדשים לאחסון, השיטות החדשות האלה יעודכנו כך שיכללו אותם באחסון שנמחק. (Iad54f, b/382273208)
  • הוספת setPartitionedCookiesEnabled API. כך מפתחים יוכלו להפעיל ולהשבית קובצי 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. התכונה הזו תהיה זמינה רק מ-WebView M133. (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. כרגע זמינה רק האפשרות Prerender. ממשק ה-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 הזה. כרגע זמינה רק האפשרות Prerender. ממשק ה-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. אפשר להפעיל או להשבית קריאות ל-WebAuthn באפליקציות באמצעות WebSettingsCompat#setWebAuthenticationSupport.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.
    • התכונה החדשה ProfileStore מאפשרת לכם לנהל את הפרופילים שזמינים באפליקציה, כולל פרופיל ברירת המחדל.
    • ממשקי WebView API קיימים, כמו CookieManager#getInstance, ימשיכו לפעול בפרופיל ברירת המחדל.
  • נוסף API להחדרה ולהרצה של JavaScript לפני טעינת הדף.
    • ממשק ה-API‏ WebViewCompat#addDocumentStartJavascript מאפשר לאפליקציות להחדיר סקריפטים ל-WebView, שמובטח שיפעלו לפני שסקריפטים אחרים בדף יופעלו. ה-API מאפשר לאפליקציה לציין רשימת יעד של מקורות שבהם הסקריפט יופעל, וכך לוודא שהוא יפעל רק בדפים הרצויים. בניגוד ל-WebView#evaluateJavascript, ממשק ה-API הזה יאפשר הפעלה של סקריפטים ב-Iframes מוטמעים כשהם נטענים. אפליקציות יכולות להשתמש ב-API החדש הזה בשילוב עם WebViewCompat#addWebMessageListener כדי להגדיר תקשורת דו-כיוונית עם JavaScript בדף בצורה מהימנה.
  • נוספו ממשקי API לשינוי האופן שבו נרשמים אירועים של שיוך (Attribution) בדוחות של ארגז החול לפרטיות.
    • השקנו API חדש,‏ WebSettingsCompat#setAttributionRegistrationBehavior, שמאפשר למפתחים להגדיר אם מקורות וטריגרים של שיוך נרשמים כאילו הם מגיעים מהאפליקציה עצמה או מתוכן האינטרנט ב-WebView. אפשר להשתמש בשיטה הזו גם כדי להשבית את Attribution Reporting ב-WebView. בנוסף, הוספנו API חדש WebSettingsCompat#getAttributionRegistrationBehavior כדי לקבל את ההתנהגות הנוכחית.
    • מידע נוסף זמין במסמכי התיעוד בנושא ארגז החול לפרטיות.
  • נוספו ממשקי 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 ולאחזר אותם מאוחר יותר לכל גישה לנתונים. יש מחלקה מסוג Singleton‏ ProfileStore שעוזרת לכם לנהל פרופילים באמצעות יצירה או מחיקה עם ממשקי API‏: getOrCreateProfile, ‏ getProfile, ‏ getAllProfileNames ו-deleteProfile. ל-class‏ 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 כדי לבטל את מטא-נתוני user-agent עבור WebView, שמשמשים לאכלוס הרמזים של user-agent client, והוספנו גם API חדש נוסף WebSettingsCompat#getUserAgentMetadata כדי לקבל ביטולים נוכחיים של user-agent. מומלץ לאפליקציות להשתמש ב-API החדש כדי להגדיר את ערכי ההחלפה הנכונים במקום להסתמך על שינוי של user-agent. (I74500)
  • הוספת API להחדרת JavaScript להפעלה במהלך טעינת הדף. ‫WebViewCompat.addDocumentStartJavascript API מאפשר לאפליקציות להחדיר סקריפטים ל-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 החדש למניפסט של האפליקציה, כמו שמתואר במסמכי התיעוד של המחלקה.
  • הוספנו את 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

  • שינוי קל ב-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 ספציפית. הוא שונה מ-API הקיים getCookie ב-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 לאובייקטים אין יותר הגבלות על מספר הפעמים שאפשר לקרוא לפונקציות setter. (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#setAlgorithmicDarkeningAllowed API נתמך בכל גרסאות 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 שמחלץ את כל המאפיינים של כל העוגיות שהוגדרו בכתובת URL ספציפית. הוא שונה מ-getCookie API הקיים ב-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

  • setAlgorithmicDarkeningAllowed API חדש ב-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. הערך שמוחזר יהיה פרוטוקול ClientVariations בקידוד Base64.
  • מוסיפים ממשקי API ב-WebSettingsCompat כדי לאפשר או לא לאפשר החשכה אלגוריתמית לאפליקציה עם targetSdk >= 33. (I29597)

שינויים ב-API

  • מוסיפים שיטה חדשה ב-ProxyCofig.Builder כדי להגדיר מעקף הפוך. אם מגדירים את ההגדרה 'עקיפה הפוכה' כ-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(). כך האפליקציות יכולות לעדכן את הקוד שלהן כדי להימנע משימוש בטרמינולוגיה לא מכלילה, ועדיין לתמוך באותו טווח של ערכות 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 פועל בריבוי תהליכים. האפשרות הזו זמינה החל מ-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 מכילה את השמירות האלה.

תכונות חדשות

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

תכונות חדשות

  • 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

  • ממשקי 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 קיימים.