Webkit
| नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
|---|---|---|---|---|
| 23 सितंबर, 2026 | 1.17.1 | - | - | 1.18.0-alpha02 |
डिपेंडेंसी का एलान करना
Webkit पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { implementation "androidx.webkit:webkit:1.17.1" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.17.1") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से 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
09 सितंबर, 2026
androidx.webkit:webkit:1.18.0-alpha01 रिलीज़ हो गया है. वर्शन 1.18.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- ऑरिजिन आइसोलेशन की सुरक्षा सुविधाओं से ऑप्ट आउट करने के लिए,
Profile#setCrossOriginIsolatedAllowlistऔरProfile#getCrossOriginIsolatedAllowlistएपीआई जोड़े गए हैं. इससेSharedArrayBufferका इस्तेमाल किया जा सकेगा. (I889d3, b/545572447)
एपीआई में हुए बदलाव
PrefetchParameters#isJavaScriptEnabledका नाम बदलकरincludeClientHintsकर देता है.isJavaScriptEnabledको अब इस्तेमाल नहीं किया जा सकता. (I269d3, b/537260697)- यह
WEBVIEW_NAVIGATE_DRAIN_PREFETCHकोWebViewFeatureमें जोड़ता है. इसका इस्तेमाल यह तय करने के लिए किया जा सकता है कि Navigation#navigate, नए यूआरएल पर नेविगेट करने से पहले प्रीफ़ेच कतार को खाली करेगा या नहीं. (I6a7a9) Profile#addQuicHintsका नाम बदलकरpreferQuicForकर देता है. (I9a663)
Webkit का वर्शन 1.17
वर्शन 1.17.1
23 सितंबर, 2026
androidx.webkit:webkit:1.17.1 रिलीज़ हो गया है. वर्शन 1.17.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
webkitलाइब्रेरी से Kotlin को हटा दिया गया है, ताकि उन ऐप्लिकेशन को अनब्लॉक किया जा सके जिनमें kotlinc से जुड़ी समस्याएं हैं.
वर्शन 1.17.0
12 अगस्त, 2026
androidx.webkit:webkit:1.17.0 रिलीज़ हो गया है. वर्शन 1.17.0 में ये बदलाव शामिल हैं.
1.16.0 के बाद हुए अहम बदलाव
- बेहतर नेविगेशन की सुविधाएं (
WebViewCompat#navigate): यहWebView#loadUrlकी जगह पर आधुनिक सुविधाएं उपलब्ध कराता है. मुख्य क्षमताओं में, इतिहास की एंट्री बदलना, ट्रैक किया जा सकने वालाNavigationऑब्जेक्ट वापस लाना, और स्थिति को सेव/रीस्टोर करने के दौरान हेडर को लगातार बनाए रखना शामिल है. - एचटीटीपी कैश मेमोरी के कोटे को कंट्रोल करने की सुविधा (
Profile#getHttpCache): यह सुविधा, प्रोफ़ाइल-लेवल पर एचटीटीपी कैश मेमोरी के कोटे की जांच करने और उन्हें अडजस्ट करने के लिए एपीआई उपलब्ध कराती है. इससे स्टैटिक कॉन्टेंट वाले ऐप्लिकेशन को फ़ायदा मिलता है. साथ ही, इस्तेमाल न किए जाने पर कैश मेमोरी डायरेक्ट्री का फ़ुಟ್प्रिंट कम हो जाता है. - प्रीकनेक्शन क्यूइंग (
Profile#enqueuePreconnect): इससे प्रीकनेक्ट करने के अनुरोधों को पहले से ही सूची में शामिल किया जा सकता है. इसके लिए, वेबव्यू को तुरंत शुरू करने की ज़रूरत नहीं होती. - फ़ेविकॉन डाउनलोड करने की प्रोसेस को ऑप्टिमाइज़ करना (
WebSettingsCompat#setDownloadFaviconsEnabled): इससे ऐप्लिकेशन, नेविगेशन के दौरान फ़ेविकॉन अपने-आप फ़ेच होने की सुविधा को बंद कर सकते हैं. इससे मेमोरी की खपत और नेटवर्क बैंडविड्थ कम हो जाती है. - प्रीरेंडर मैनेजमेंट (
Profile#getMaxPrerenders/clearMaxPrerenders): इससे, एक साथ ज़्यादा से ज़्यादा प्रीरेंडर को वापस पाने और रीसेट करने के तरीके मिलते हैं. - एपीआई को बेहतर बनाना और साफ़ करना:
SpeculativeLoadingParametersको बंद कर दिया गया है. अबPrerenderParameters/PrefetchParametersका इस्तेमाल करें. एक्सपेरिमेंट के तौर पर उपलब्धProfile#setOriginMatchedHeaderको हटा दिया गया. इसकी जगह 1.15.0 वर्शन मेंProfile#addCustomHeaderको शामिल किया गया है. - क्रैश रोकने के लिए, पहले से सूचना देने वाला Lint नियम: यह AndroidX Lint चेक जोड़ता है. यह कस्टम
WebViewClientअटैच होने पर,onRenderProcessGoneके मौजूद न होने पर फ़्लैग करता है. इससे डेवलपर को रेंडरर क्रैश को आसानी से हैंडल करने में मदद मिलती है.
वर्शन 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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
Profile#enqueuePreconnectएपीआई जोड़ा गया है. इससे प्रीकनेक्शन के अनुरोधों को तुरंतWebViewशुरू किए बिना ही सूची में शामिल किया जा सकता है. (Id7e4a, b/511156405)WebSettingsCompat#setDownloadFaviconsEnabledऔरWebSettingsCompat#getDownloadFaviconsEnabledको जोड़ा गया है. इससे डेवलपर यह सेट या पता कर सकते हैं कि नेविगेशन पर फ़ेविकॉन डाउनलोड किया जाएगा या नहीं. फ़ेविकॉन डाउनलोड करने की सुविधा बंद करने से, मेमोरी और बैंडविथ में कमी आएगी. (I9f87e, b/510229667)
वर्शन 1.17.0-alpha03
01 जुलाई, 2026
androidx.webkit:webkit:1.17.0-alpha03 रिलीज़ हो गया है. वर्शन 1.17.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
HttpCacheएपीआई जोड़ा गया है. इसेProfile#getHttpCacheके ज़रिए ऐक्सेस किया जा सकता है. इसकी मदद से, किसी प्रोफ़ाइल के लिए एचटीटीपी कैश मेमोरी के कोटा को मैनेज किया जा सकता है और उससे जुड़ी क्वेरी की जा सकती है. इससे उन ऐप्लिकेशन की परफ़ॉर्मेंस और उपलब्धता को बेहतर बनाने में मदद मिल सकती है जो वेब पर दिखाए जाने वाले स्टैटिक कॉन्टेंट पर काफ़ी हद तक निर्भर होते हैं. इसके अलावा, इससे कैश मेमोरी डायरेक्ट्री के इस्तेमाल को कम किया जा सकता है. ऐसा उन मामलों में किया जा सकता है जहां एचटीटीपी कैश मेमोरी की ज़रूरत नहीं होती. इस सुविधा का इस्तेमाल करने के लिए,WebViewका M151 या उसके बाद का वर्शन होना ज़रूरी है. (I40a7f, b/501449506)ScriptHandlerऔरUserAgentMetadata#getFormFactorsपर मौजूद गलत@RequiresFeatureएनोटेशन हटा दिए गए हैं. (Ib9550)
लिंट की जांच
- अनहैंडल किए गए
onRenderProcessGoneकॉलबैक के लिए, लिंट की चेतावनी दी गई है. इस कॉलबैक से डेवलपर को, रेंडर प्रोसेस बंद होने पर अपने ऐप्लिकेशन को क्रैश होने से बचाने का मौका मिलता है. अगरWebViewClientका इस्तेमाल किया गया है, लेकिन उसने इस कॉलबैक को ओवरराइड नहीं किया है, तो एक चेतावनी दिखेगी. (Ia4e41)
वर्शन 1.17.0-alpha02
17 जून, 2026
androidx.webkit:webkit:1.17.0-alpha02 रिलीज़ हो गया है. वर्शन 1.17.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- नए एपीआई जोड़े गए:
getDownloadFaviconsEnabledऔरsetDownloadFaviconsEnabled. इन एपीआई की मदद से, यह कंट्रोल किया जा सकेगा कि फ़ेविकॉन अपने-आप डाउनलोड होंगे या नहीं. (If9224, b/510229667)
एपीआई में हुए बदलाव
- अगर डुप्लीकेट प्रीफ़ेच अनुरोध है, तो उपयोगकर्ताओं को इसकी सूचना देने के लिए,
prefetchUrlAsyncएपीआई को अपडेट करें. यह एपीआई,PrefetchResultको कॉलबैक टाइप के तौर पर स्वीकार करता है. (Icc796, b/483041824) ExpectedNoVarySearchDataअब सेवा में नहीं है और इसेExpectedNoVarySearchHintपर अपडेट कर दिया गया है.ignoredQueryParametersऔरconsideredQueryParametersको ऐसी सूचियों के तौर पर बनाया जाता है जिनमें बदलाव नहीं किया जा सकता. (I7bb8c, b/491718321)
गड़बड़ियां ठीक की गईं
isConfigFeatureSupportedके बजायisStartupFeatureSupportedको रेफ़रंस देने के लिए,ProcessGlobalConfigपर सही किए गएRequiresFeatureएनोटेशन. (I6370b)
वर्शन 1.17.0-alpha01
19 मई, 2026
androidx.webkit:webkit:1.17.0-alpha01 रिलीज़ हो गया है. वर्शन 1.17.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
WebView#loadUrlके बेहतर वर्शनWebViewCompat#navigateको जोड़ा गया.loadUrlकी तरह, यह तरीका भीWebViewमें बताए गए यूआरएल को लोड करेगा. हालांकि, इसमें ये अतिरिक्त सुविधाएं मिलती हैं:- इससे नेविगेशन के इतिहास में मौजूद मौजूदा पेज को बदला जा सकता है.
- यह एक नेविगेशन ऑब्जेक्ट दिखाता है. इससे डेवलपर, नेविगेट कॉल और नेविगेशन कॉलबैक के बीच मिलान कर सकता है.
- यह कुकी, अतिरिक्त हेडर को ज़्यादा बेहतर तरीके से मैनेज करती है. साथ ही, सेव स्टेट का इस्तेमाल करते समय उन्हें सेव और रीस्टोर करती है. (Iedefd, b/408128748)
SpeculativeLoadingParametersअब काम नहीं करता. ऐप्लिकेशन को, अनुमान के हिसाब से यूआरएल लोड होने की सुविधा को कंट्रोल करने के लिए, ज़्यादा सटीकPrerenderParametersयाPrefetchParametersपर माइग्रेट करना चाहिए. (I8afed)- प्रीरेंडरिंग के व्यवहार को मैनेज करने के लिए,
Profileमें नए तरीके जोड़े गए हैं:Profile#getMaxPrerenders()से मौजूदा सीमा मिलती है औरProfile#clearMaxPrerenders()से इसे डिफ़ॉल्ट पर रीसेट किया जाता है. (I696ed) - एक्सपेरिमेंट के तौर पर उपलब्ध
Profile#setOriginMatchedHeaderऔर इससे जुड़े तरीकों को हटा दिया गया है. इन एपीआई की जगह Profile#addCustomHeader ने ले ली है. इसे1.15.0में स्टेबल एपीआई के तौर पर रिलीज़ किया गया था. (Ia7f5c, b/485235632)
Webkit का वर्शन 1.16
वर्शन 1.16.0
6 मई, 2026
androidx.webkit:webkit:1.16.0 रिलीज़ हो गया है. वर्शन 1.16.0 में ये बदलाव शामिल हैं.
1.15.0 के बाद हुए अहम बदलाव:
1.16.0 स्टेबल रिलीज़ में, कई एपीआई को एक्सपेरिमेंट के तौर पर उपलब्ध होने की स्थिति से हटा दिया गया है. इससे, एसिंक WebView स्टार्टअप और नेविगेशन सुनने जैसी सुविधाओं के लिए, स्थिरता और डेवलपर अनुभव में काफ़ी सुधार हुआ है.
इस लाइब्रेरी के लिए, SDK के कम से कम वर्शन (minSdk) को बढ़ाकर 24 कर दिया गया है.
ProcessGlobalConfigऔरWebViewStartUpConfigमें,startUpWebViewएपीआई और इससे जुड़े एसिंक स्टार्टअप कॉन्फ़िगरेशन एपीआई को एक्सपेरिमेंटल से स्टेबल वर्शन में अपग्रेड कर दिया गया है. इन एपीआई की मदद से, ऐप्लिकेशन WebView को पहले ही शुरू कर सकते हैं. इससे यह पक्का किया जा सकता है कि स्टार्टअप के कुछ हिस्से बैकग्राउंड में चलें, ताकि रिस्पॉन्स देने की क्षमता बेहतर हो सके.startUpWebViewके पिछले वर्शन का इस्तेमाल अब नहीं किया जा सकता. इसलिए, उपयोगकर्ताओं को नए वर्शन पर माइग्रेट करना चाहिए. इसमेंWebViewOutcomeReceiverलगता है, ताकि फ़ेल होने पर कॉलबैक की सुविधा मिल सके.- नेविगेशन एपीआई, जिनमें
WebViewCompat\#addNavigationListener,NavigationListener,Navigation, औरPageशामिल हैं, अब स्टेबल वर्शन में उपलब्ध हैं. इन एपीआई की मदद से, ऐप्लिकेशन डेवलपर कोNavigationListenerइंटरफ़ेस के ज़रिए, पेज नेविगेशन के अलग-अलग चरणों के दौरान वेबव्यू से कॉलबैक मिलते हैं. इसमें पेज से परफ़ॉर्मेंस मेट्रिक पाने का विकल्प भी शामिल है. इससे ऐप्लिकेशन डेवलपर के लिए, अपने ऐप्लिकेशन में पहले पक्ष (ग्राहक) के पेजों की परफ़ॉर्मेंस को मेज़र करना आसान हो जाता है.NavigationऔरPageऑब्जेक्ट, यूनीक आइडेंटिफ़ायर के तौर पर काम करते हैं. ये अलग-अलग कॉलबैक के बीच लिंक के तौर पर काम करते हैं. ऐसा तब होता है, जब एक साथ कई WebView या नेविगेशन हो रहे हों.Navigationऑब्जेक्ट से, मौजूदा नेविगेशन के बारे में ज़्यादा जानकारी मिलती है. जैसे, इसे कैसे शुरू किया गया और यह सफल हुआ या इससे गड़बड़ी वाला पेज मिला. वहीं,Pageऑब्जेक्ट से खास यूआरएल मिलता है. WebViewCompat\#saveState,WebView\#saveStateतरीके को ज़्यादा कंट्रोल के साथ बढ़ाता है. इससे डेवलपर, स्थिति के लिए ज़्यादा से ज़्यादा साइज़ तय कर सकते हैं. साथ ही, यह तय कर सकते हैं कि फ़ॉरवर्ड इतिहास की एंट्री शामिल की जानी चाहिए या नहीं. सेव किया गया स्टेट ऑब्जेक्ट अब भीWebView\#restoreStateके साथ काम करता है- लाइब्रेरी के इस वर्शन में,
android.os.OutcomeReceiverके लाइब्रेरी-विशिष्ट वर्शन के तौर परWebViewOutcomeReceiverको पेश किया गया है. इससे यह लाइब्रेरी, एसिंक्रोनस कॉलबैक के नतीजे को हैंडल करने के लिए, इसी तरह का मैकेनिज़्म उपलब्ध करा सकती है. इसके लिए, इसे ज़्यादाtargetSdkवैल्यू पर निर्भर रहने की ज़रूरत नहीं होती. एक्सपेरिमेंट के तौर पर उपलब्ध होने के दौरान, इस क्लास का नामandroidx.webkit.OutcomeReceiverCompatथा. हालांकि, नाम के टकराव से बचने के लिए इसका नाम बदल दिया गया है. बाहरी योगदान: नए एपीआई जोड़े गए हैं. इनकी मदद से, दस्तावेज़ लोड होने वाले इवेंट (
WebViewCompat#addJavaScriptOnEvent) के हिस्से के तौर पर, लगातार काम करने वालेJavaScriptको इंजेक्ट किया जा सकता है. साथ ही, मौजूदा पेज केJavaScriptसे टकराव को रोकने के लिए,JavaScriptऔरWebMessageListenersको आइसोलेटेड वर्ल्ड में इंजेक्ट किया जा सकता है. इसके अलावा, वेब मैसेज (JavaScriptReplyProxy#executeJavaScript) के जवाब के तौर पर,JavaScriptको एक्ज़ीक्यूट किया जा सकता है.1.15.0 के बाद जोड़े गए एक्सपेरिमेंटल एपीआई
पहले से बनाए गए
WebViewsपर बिल्डर कॉन्फ़िगरेशन लागू करने के लिए,WebViewBuilder.applyToएपीआई जोड़ा गया. इससे, पहले से मौजूदWebViewऑब्जेक्ट के साथ,WebViewBuilderएपीआई की कॉन्फ़िगरेशन सुविधाओं का इस्तेमाल किया जा सकता है. साथ ही, यह गारंटी मिलती है कि सेटिंग में बदलाव नहीं होगा. इसका इस्तेमाल, लेआउट इन्फ़्लेशन से बनाए गएWebViewइंस्टेंस याWebViewकी सबक्लास के साथ किया जाता है.
1.15.0 के बाद अपडेट किए गए एक्सपेरिमेंटल एपीआई
BackForwardCacheSettingsऑब्जेक्ट को,WebSettingsCompatके ज़रिए उपलब्ध कराए गए कॉन्फ़िगरेशन ऑब्जेक्ट से बदलकर लाइव ऑब्जेक्ट कर दिया गया है. इसे WebSettingsCompat#getBackForwardCacheSettings को कॉल करके पाया जा सकता है. अब ऑब्जेक्ट में सेटर मेथड हैं, जो सेटिंग को सीधे तौर पर अपडेट करते हैं. पिछलीBuilderनेस्ट की गई क्लास को हटा दिया गया है. साथ ही,WebSettingsCompat#setBackForwardCacheSettings.को भी हटा दिया गया है. पहले इन तरीकों का इस्तेमाल करने वाले ऐप्लिकेशन को अपग्रेड करते समय, बिल्ड से जुड़ी गड़बड़ियां दिखेंगी.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
08 अप्रैल, 2026
androidx.webkit:webkit:1.16.0-beta01 रिलीज़ हो गया है. वर्शन 1.16.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
Profile.prefetchUrlAsyncफ़ंक्शन केCallbackExecutorआर्ग्युमेंट की वैल्यू अब शून्य हो सकती है. अगर इसकी वैल्यू नहीं दी जाती है, तो यह डिफ़ॉल्ट रूप से मुख्य थ्रेड पर सेट हो जाती है. (Ib89ef, b/483041824)
वर्शन 1.16.0-alpha04
25 मार्च, 2026
androidx.webkit:webkit:1.16.0-alpha04 रिलीज़ हो गया है. वर्शन 1.16.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
ProcessGlobalConfigऔरWebViewStartUpConfigमें,startUpWebViewएपीआई और इससे जुड़े एसिंक स्टार्टअप कॉन्फ़िगरेशन एपीआई को एक्सपेरिमेंटल से स्टेबल वर्शन में अपग्रेड कर दिया गया है.
WebView शुरू होने में समय लग सकता है. इसलिए, ये एपीआई ऐप्लिकेशन को सही समय पर WebView शुरू करने की अनुमति देते हैं. इससे यह पक्का होता है कि WebView स्टार्टअप के जो हिस्से बैकग्राउंड में चल सकते हैं वे ऐसा करेंगे. इससे पहली बार WebView का इस्तेमाल करने पर, उसकी परफ़ॉर्मेंस बेहतर होती है.
इन एपीआई को पहले एक्सपेरिमेंट के तौर पर रिलीज़ किया गया था. अब इनका इस्तेमाल@OptInएनोटेशन के बिना किया जा सकता है.startUpWebViewके पिछले वर्शन को बंद कर दिया गया है. इसलिए, इस एपीआई का इस्तेमाल करने वाले लोगों को नए वर्शन पर माइग्रेट करना चाहिए. इसमें फ़ेल होने पर कॉल करने की सुविधा के लिए,WebViewOutcomeReceiverलगता है. (Iebb60, I56bf7)- नेविगेशन एपीआई के लिए, अब
@OptInएनोटेशन का इस्तेमाल करना ज़रूरी नहीं है.
इसमेंWebViewCompat#addNavigationListenerके साथ-साथNavigationListenerइंटरफ़ेस, Navigation, और Page क्लास शामिल हैं. ध्यान दें किNavigationऔरPageटाइप अब इंटरफ़ेस के बजाय क्लास हैं.
अब इन एपीआई की सुविधाओं की जांच, नएWebViewFeature#NAVIGATION_LISTENERसुविधा कॉन्स्टेंट का इस्तेमाल करके की जानी चाहिए. (I410c8, b/474625648, b/448580228, b/479792864, b/432696062, b/474625648) WebViewCompat#saveStateसे एक्सपेरिमेंटल एनोटेशन हटाता है. यह एपीआई,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में, नई वेब परफ़ॉर्मेंस मेट्रिक एपीआईonFirstContentfulPaintMillis,onLargestContentfulPaintMillis, औरonPerformanceMarkMillisजोड़े गए. इन एपीआई की मदद से डेवलपर, JavaScript का इस्तेमाल करके फ़र्स्ट/सबसे बड़े एलिमेंट को रेंडर करने में लगने वाला समय और परफ़ॉर्मेंस मार्क को पाने के बजाय, सीधे अपने ऐप्लिकेशन में ट्रैक कर सकते हैं. (Idb93b, b/432696062)- नेविगेशन ऑब्जेक्ट में गड़बड़ी की जानकारी जोड़ी गई है.
Navigation#getWebResourceErrorऔरWebResourceError#getDebugCode.देखें. अगर नेटवर्क की गड़बड़ी की वजह से नेविगेशन लोड नहीं हो पाता है, तो अब नेविगेशन ऑब्जेक्ट पर यह जानकारी उपलब्ध है कि ऐसा क्यों हुआ. (I18bdc, b/474625648) BackForwardCacheसेटिंग के एपीआई शेप को नएBackForwardCacheSettingsऑब्जेक्ट से अपडेट करें. इसेWebSettingsCompat#getBackForwardCacheSettingsको कॉल करके पाया जा सकता है. इसका इस्तेमाल, सेट/गेट तरीकों के ज़रिए हर सेटिंग में बदलाव करने के लिए किया जा सकता है.
ध्यान दें: हमWebSetingsCompat#setBackForwardCacheSettingsऔरBackForwardCacheSettings.Builderको हटा रहे हैं. इसलिए, अगर आपने हटाए गए एपीआई का इस्तेमाल किया था, तो इस वर्शन पर अपडेट करने के दौरान कंपाइल करने से जुड़ी गड़बड़ियां हो सकती हैं. (I377f4)- प्रीफ़ेच अनुरोध में डीबग करने से जुड़ी जानकारी अटैच करने के लिए, एक एपीआई जोड़ा गया है. (Ibb300, b/474559983)
एपीआई में हुए बदलाव
- SDK टूल के साथ काम करने वाले सबसे पुराने वर्शन (minSdk) को बढ़ाकर 24 कर दिया गया है. एसडीके के 24 से पहले के वर्शन को टारगेट करने वाले ऐप्लिकेशन को, लाइब्रेरी के इस और आने वाले वर्शन का इस्तेमाल करने के लिए, टारगेट एसडीके को अपडेट करना होगा. (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)
बाहरी योगदान
- के लिए नए एपीआई पेश किए जा रहे हैं
- दस्तावेज़ लोड होने वाले इवेंट के हिस्से के तौर पर, लगातार काम करने वाली JavaScript को इंजेक्ट करें. यह मौजूदा
WebViewCompat#addDocumentStartJavaScriptकी तरह ही काम करता है. हालांकि, इससे यह पक्का होता है कि स्क्रिप्ट के चलने पर DOM तैयार हो. नया एपीआईWebViewCompat#addJavaScriptOnEventहै. - JavaScript और
WebMessageListenerको आइसोलेटेड वर्ल्ड में इंजेक्ट करें, ताकि मौजूदा पेज JavaScript के साथ टकराव न हो. नए एपीआईWebViewCompat#addJavaScriptOnEventऔरWebViewCompat#addWebMessageListenerहैं. - यह कुकी, उसी फ़्रेम/वर्ल्ड के किसी पेज से भेजे गए वेब मैसेज के जवाब के तौर पर JavaScript को एक्ज़ीक्यूट करती है जिसने मैसेज भेजा था. नया एपीआई
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()जोड़ा गया है. यह Page ऑब्जेक्ट (I0a5d7, b/465339942) से जुड़े यूआरएल को दिखाता है- पहले से बनाए गए WebViews में बिल्डर कॉन्फ़िगरेशन लागू करने के लिए,
WebViewBuilder.applyToएपीआई जोड़ा गया (Iae133, b/463288296)
वर्शन 1.16.0-alpha01
14 जनवरी, 2026
androidx.webkit:webkit:1.16.0-alpha01 रिलीज़ हो गया है. वर्शन 1.16.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
NavigationListenerमें, नई वेब परफ़ॉर्मेंस मेट्रिक एपीआईonFirstContentfulPaintMillis,onLargestContentfulPaintMillis, औरonPerformanceMarkMillisजोड़े गए. इन एपीआई की मदद से, डेवलपर JavaScript का इस्तेमाल करके FCP/LCP और परफ़ॉर्मेंस मार्क को वापस पाने के बजाय, सीधे अपने ऐप्लिकेशन में उन्हें ट्रैक कर सकते हैं. (I50266, b/432696062)NAVIGATION_LISTENER_NON_NULL_PAGE_FOR_SAME_DOCUMENT_NAVIGATIONSकोWebViewFeatureमें जोड़ता है. इसका इस्तेमाल यह तय करने के लिए किया जा सकता है कि एक ही दस्तावेज़ पर नेविगेट करने पर,Navigation#getPageशून्य वैल्यू देगा या नहीं. (I3a2aa)
गड़बड़ियां ठीक की गईं
getProfilesToLoadDuringStartupमें स्ट्रिंग पैरामीटर की नल वैल्यू सेट करने की सुविधा को ठीक किया गया (Ic2ce5)WebViewBuilderएट्रिब्यूट की वैल्यू के तौर पर शोकेस की सुविधा मौजूद नहीं है, इस समस्या की जांच करने वाले कॉन्सटेंट (I95534) को दिखाएं
वर्शन 1.15
वर्शन 1.15.0
17 दिसंबर, 2025
androidx.webkit:webkit:1.15.0 रिलीज़ हो गया है. वर्शन 1.15.0 में ये बदलाव शामिल हैं.
1.14.0 के बाद हुए अहम बदलाव
इस रिलीज़ में, minSdk को एपीआई 21 से बढ़ाकर एपीआई 23 कर दिया गया है. इसमें एपीआई की ये नई सुविधाएं भी जोड़ी गई हैं:
- WebView और Service Workers के लिए,
shouldInterceptRequestकॉलबैक के हिस्से के तौर पर कुकी ऐक्सेस और सेट करता है. जो ऐप्लिकेशन डेवलपर फ़िलहालshouldInterceptRequestके हिस्से के तौर परCookieManagerAPI को ऐक्सेस करते हैं वे अब सीधे तौर पर कुकी हेडर चालू कर सकते हैं. इसके लिए, उन्हें WebViewCompat#setCookiesIncludedInShouldInterceptRequest को कॉल करना होगा. इसके बाद,WebView, WebResourceRequest.getRequestHeaders() मैप मेंCookieहेडर जोड़ देगा. यह हेडर, अनुरोध पर लागू होने वाली कुकी के बारे में जानकारी देगा. इससे पार्टिशन्ड कुकी को भी सही तरीके से मैनेज किया जा सकेगा. ऐप्लिकेशन,Set-Cookieहेडर वैल्यू दे सकते हैं. इसके लिए, हाल ही में जोड़े गए WebResourceResponseCompat#setCookies एपीआई का इस्तेमाल किया जा सकता है. जवाब को मैनेज करने के लिए, जोड़ी गईSet-Cookieवैल्यू कोWebViewप्रोसेस करेगा. - अनुरोध के हेडर को अपनी पसंद के मुताबिक सेट करें. Profile#addCustomHeader एपीआई की मदद से, ऐप्लिकेशन डेवलपर हेडर के नाम और वैल्यू के स्टैटिक पेयर की सूची सेट कर सकते हैं. यह सूची, तय किए गए ऑरिजिन पैटर्न से मेल खाने वाले किसी भी अनुरोध पर भेजी जाएगी.
- WebView हाइपरलिंक के कॉन्टेक्स्ट मेन्यू में आइटम को पसंद के मुताबिक बनाने की अनुमति दें. ऐप्लिकेशन डेवलपर, WebViewCompat#setHyperlinkContextMenuItems को कॉल करके यह तय कर सकते हैं कि जब कोई उपयोगकर्ता हाइपरलिंक को दबाकर रखता है, तब कॉन्टेक्स्ट मेन्यू में कौनसे आइटम दिखें.
- प्रीरेंडरिंग को ट्रिगर करें. WebViewCompat#prerenderUrlAsync की मदद से, ऐप्लिकेशन को यूआरएल को पहले से रेंडर करने की अनुमति मिलती है. ऐसा तब किया जाता है, जब यूआरएल को
WebViewमें दिखाया जाता है. प्रीरेंडरिंग की मदद से, पेज को पहले से फ़ेच किया जा सकता है. इससे पेज लोड होने की परफ़ॉर्मेंस में काफ़ी सुधार हो सकता है. जब उपयोगकर्ता यूआरएल पर जाता है, तो उसे पहले से रेंडर किया गया पेज तुरंत दिखता है. - WebSettingsCompat#setBackForwardCacheSettings एपीआई को कॉल करके,
WebViewमें BackForwardCache की खास जानकारी को कंट्रोल करें. इस एपीआई की मदद से, टाइम आउट को सेकंड में सेट किया जा सकता है या पेज कैश मेमोरी की सीमाओं में बदलाव किया जा सकता है. - आखिर में,
WebViewमेंX-Requested-Withहेडर को हटाने का अनुरोध रद्द कर दिया गया है. अब सभी अनुरोधों पर हेडर फिर से भेजा जाएगा. इसलिए, अब अनुमति वाली सूची के एपीआई की ज़रूरत नहीं है. साथ ही, इसे अब इस्तेमाल नहीं किया जा सकता.
1.14.0 के बाद जोड़े गए एक्सपेरिमेंटल एपीआई
WebViewलाइब्रेरी ने कई ऐसे एपीआई भी लॉन्च किए हैं जो फ़िलहाल एक्सपेरिमेंट के तौर पर उपलब्ध हैं. इन एपीआई के बारे में ज़्यादा जानने के लिए, पैकेज की खास जानकारी देखें. अगर आपको इन एपीआई के बारे में कोई सुझाव/राय देनी है या शिकायत करनी है, तो कृपया android-webview-dev@chromium.org पर ईमेल भेजकर या हमारे समस्या ट्रैकर में जाकर ऐसा करें.
ये सुविधाएं, एक्सपेरिमेंट के तौर पर उपलब्ध हैं:
- ProcessGlobalConfig#setUiThreadStartupMode की मदद से, WebView के यूज़र इंटरफ़ेस (यूआई) थ्रेड के शुरू होने की प्रोसेस को कॉन्फ़िगर किया जा सकता है. खास तौर पर, इससे यह चुना जा सकेगा कि स्टार्टअप को एक ही टास्क के तौर पर चलाना है या उसे छोटे-छोटे टास्क में बांटना है. इससे यूज़र इंटरफ़ेस (यूआई) थ्रेड लूपर को कंट्रोल मिल जाता है.
WebViewइंस्टेंस बनाएं. इनका कॉन्फ़िगरेशन सीमित होता है. इन्हें बाद में WebViewBuilder API की मदद से बदला नहीं जा सकता. शुरुआत में, इसका मतलब है कि अब JavaScript इंटरफ़ेस ऑब्जेक्ट जोड़े जा सकते हैं. ये ऑब्जेक्ट, सिर्फ़ ऑरिजिन की तय की गई सूची में शामिल किए जाते हैं. इससे इसका इस्तेमाल ज़्यादा सुरक्षित तरीके से किया जा सकता है. इसके बाद, बनाए गएWebViewइंस्टेंस परaddJavascriptInterfaceको किए जाने वाले सभी कॉल भी बंद हो जाएंगे. इससे यह पक्का होता है कि कॉन्फ़िगरेशन में बदलाव नहीं किया जा सकता.- WebViewCompat#startUpWebView एपीआई के बारे में ज़्यादा जानकारी:
- अब आपके पास, लोड करने के लिए प्रोफ़ाइलों का सेट सिंक्रोनस तरीके से तय करने का विकल्प है. इससे ऐप्लिकेशन डेवलपर को, किसी भी प्रोफ़ाइल को लोड करने की प्रोसेस को स्किप करने या उन प्रोफ़ाइलों के सेट के बारे में बताने की सुविधा मिलती है जिनका इस्तेमाल ऐप्लिकेशन करता है. इससे यह पक्का किया जा सकता है कि सभी प्रोफ़ाइलें लोड हो गई हैं.
- अब एसिंक स्टार्टअप को डीबग करना आसान हो गया है. इसके लिए, getUiThreadBlockingStartUpLocations और getNonUiThreadBlockingStartUpLocations कॉलबैक का इस्तेमाल करें. इससे ऐप्लिकेशन में उन जगहों का पता लगाया जा सकता है जहां WebView स्टार्टअप, यूज़र इंटरफ़ेस (यूआई) थ्रेड या बैकग्राउंड थ्रेड को ब्लॉक करता है.
- आपके पास यह कॉन्फ़िगर करने का विकल्प होता है कि
WebViewका यूआई थ्रेड इनिशियलाइज़ेशन कैसे चलाया जाना चाहिए.
- Profile#warmUpRendererProcess को कॉल करके, किसी प्रोफ़ाइल के लिए रेंडरर प्रोसेस को चालू करें. इस एपीआई का इस्तेमाल,
WebViewके जटिल लाइफ़साइकल वाले ऐप्लिकेशन कर सकते हैं. इससे यह पक्का किया जा सकता है कि रेंडरर प्रोसेस चालू है. भले ही, सभी WebView इंस्टेंस बंद कर दिए गए हों. - Profile#addQuicHints की मदद से ऐप्लिकेशन,
WebViewको यह बता सकते हैं कि दिए गए ऑरिजिन से कनेक्ट करते समय, QUIC / HTTP3 को प्राथमिकता दें. - Profile#preconnect की मदद से, ऐप्लिकेशन किसी ऑरिजिन से कनेक्शन खोल सकते हैं. ऐसा वे उस ऑरिजिन पर नेविगेट करने से पहले करते हैं, ताकि आने वाले समय में लोड होने की प्रोसेस को तेज़ किया जा सके.
1.14.0 के बाद अपडेट किए गए एक्सपेरिमेंटल एपीआई
- Navigation Listener API को अपडेट किया गया है, ताकि ऐप्लिकेशन कई लिसनर इंस्टेंस उपलब्ध करा सकें. इन्हें बैकग्राउंड थ्रेड कॉलबैक के लिए, कस्टम एक्ज़ीक्यूटर के साथ कॉन्फ़िगर किया जा सकता है. पहले इसे WebNavigationClient API कहा जाता था. हालांकि, अब इसे बंद कर दिया गया है और इसकी जगह नया एपीआई इस्तेमाल किया जा रहा है. इसके अलावा, इस अपडेट में onFirstContentfulPaint कॉलबैक में टाइमिंग की जानकारी भी जोड़ी गई है. इससे नेविगेशन शुरू होने से लेकर पेंट इवेंट तक की टाइमिंग की जानकारी मिलती है.
वर्शन 1.15.0-rc01
03 दिसंबर, 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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- एक्सपेरिमेंट के तौर पर
WebViewBuilderएपीआई जोड़े गए (I06828, b/409740828) - एसिंक स्टार्टअप के लिए
UiThreadStartupModeजोड़ा गया. इससे Chromium को स्टार्टअप करने के दौरानisMultiProcessEnabled()कॉल करने से रोका जा सकेगा (I524ee, b/397372092) - 1.16 वर्शन के रिलीज़ होने तक,
UserAgentफ़ॉर्म फ़ैक्टर को छिपाना (Ibac8a, b/430554841, b/454438418) - नेविगेशन एपीआई को अपडेट किया गया है, ताकि ऐप्लिकेशन
NavigationListenerइंस्टेंस उपलब्ध करा सकें. इन्हें बैकग्राउंड थ्रेड कॉलबैक के लिए, कस्टम एक्ज़ीक्यूटर के साथ कॉन्फ़िगर किया जा सकता है. अब एकWebViewमें कईNavigationListenerइंस्टेंस जोड़े जा सकते हैं.
इसके अलावा, इस अपडेट मेंonFirstContentfulPaintकॉलबैक में टाइमिंग की जानकारी भी जोड़ी गई है. इससे नेविगेशन शुरू होने से लेकर पेंट इवेंट तक की टाइमिंग की जानकारी मिलती है. (I6aa8e, b/448580228) Profile#addQuicHintsजोड़ता है. इससे ऐप्लिकेशन,WebViewको यह बता सकते हैं कि दिए गए ऑरिजिन से कनेक्ट करते समय, QUIC / HTTP3 को प्राथमिकता दें. (I8e364, b/445339041)- एक्सपेरिमेंट के तौर पर उपलब्ध एनोटेशन के साथ अपडेट किए गए फ़ीचर कॉन्स्टेंट और एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई के बारे में ज़्यादा जानकारी के साथ अपडेट की गई लाइब्रेरी README. (I1b914)
गड़बड़ियां ठीक की गईं
androidx.webkit:webkit:1.15.0-beta01को रिलीज़ किया जा रहा है (I0b1bd, b/417241552)
वर्शन 1.15.0-alpha03
08 अक्टूबर, 2025
androidx.webkit:webkit:1.15.0-alpha03 रिलीज़ हो गया है. वर्शन 1.15.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- कस्टम अनुरोध हेडर सेट करने के लिए, एक नया एपीआई पेश किया गया है. यह पिछले एक्सपेरिमेंटल एपीआई का एक वर्शन है. अब इसकी मदद से, ऐप्लिकेशन हर हेडर के लिए कई वैल्यू सेट कर सकता है. हर वैल्यू को ओरिजिन पैटर्न के अलग-अलग सेट पर मैप किया जाता है. नए एपीआई की मदद से, ऐप्लिकेशन कॉन्फ़िगर किए गए हेडर की जांच भी कर सकता है. (Id7d30, b/419469873, b/429269470)
WebViewमें X-Requested-With हेडर को हटाने की प्रोसेस रद्द कर दी गई है. अब यह हेडर, डिफ़ॉल्ट रूप से सभी अनुरोधों पर फिर से भेजा जाएगा. एपीआई को अनुमति देने वाली सूची की अब ज़रूरत नहीं है. इसे बंद कर दिया गया है. (I884c3, b/447094379)WebSettingsCompatमें एक नया एपीआई जोड़ा गया है. इससे डेवलपर,WebViewकी बैक-फ़ॉरवर्ड कैश मेमोरी को कॉन्फ़िगर कर सकते हैं. जैसे, टाइम आउट को सेकंड में सेट करना या पेज कैश मेमोरी की सीमाएं तय करना. (I642b2, b/432395269)HyperlinkContextMenuएपीआई जोड़ें, ताकिWebViewहाइपरलिंक के कॉन्टेक्स्ट मेन्यू (Idb809, b/382654667) में आइटम को पसंद के मुताबिक बनाया जा सके- उन मामलों को डीबग करने के लिए
getAsyncStartUpLocationsएपीआई जोड़ा गया है जहांstartUpWebViewएपीआई का इस्तेमाल किए बिना,WebViewको एसिंक्रोनस तरीके से शुरू किया गया था. (I6bf4b, b/417434566)
वर्शन 1.15.0-alpha02
27 अगस्त, 2025
androidx.webkit:webkit:1.15.0-alpha02 रिलीज़ हो गया है. वर्शन 1.15.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
Profile#preconnectजोड़ता है. इससे ऐप्लिकेशन, किसी ऑरिजिन पर नेविगेट करने से पहले उससे कनेक्शन खोल सकते हैं, ताकि आने वाले समय में लोड होने की प्रोसेस को तेज़ किया जा सके. (I8db41)WebViewCompatमें नयाprerenderUrlAsyncएपीआई जोड़ा गया है. इससे ऐप्लिकेशन, यूआरएल को WebView में दिखाए जाने से पहले ही प्रीरेंडर कर सकते हैं.
प्रीरेंडरिंग की मदद से, पेज को पहले से फ़ेच किया जा सकता है. इससे पेज के लोड होने की परफ़ॉर्मेंस में काफ़ी सुधार हो सकता है. जब उपयोगकर्ता यूआरएल पर जाता है, तो उसे पहले से रेंडर किया गया पेज तुरंत दिखता है.
इन एपीआई को पहले एक्सपेरिमेंट के तौर पर रिलीज़ किया गया था. अब इनका इस्तेमाल@OptInएनोटेशन के बिना किया जा सकता है. (Ie14f5)- अब
startUpWebViewएपीआई को कॉल करते समय, सिंक किए गए तरीके से लोड करने के लिए प्रोफ़ाइलों का सेट तय किया जा सकता है. इसेWebViewStartUpConfig.Builder(I9a6e6) में नए तरीके से प्रोफ़ाइल के नाम पास करके कॉन्फ़िगर किया जाता है WebSettingsऑब्जेक्ट पर BackForwardCache को चालू/बंद करने के लिए,WebSettingsCompatमें एक नया एपीआई जोड़ें. इस एपीआई को पहले एक्सपेरिमेंट के तौर पर रिलीज़ किया गया था. अब इसका इस्तेमाल@OptInएनोटेशन के बिना किया जा सकता है. (Ie413b)- User-Agent के डिवाइस के साइज़, डाइमेंशन या कॉन्फ़िगरेशन को बदलने की सुविधा जोड़ी गई है.
UserAgentMetadataक्लास में, User-Agent के डिवाइस के साइज़, डाइमेंशन या कॉन्फ़िगरेशन का मेटाडेटा पाने और सेट करने के लिए नए तरीके हैं.UserAgentMetadata.Builderमें,Sec-CH-UA-Form-FactorsUser-Agent क्लाइंट हिंट को बदलने के लिए,setFormFactors()का नया तरीका उपलब्ध है. बदली गई मौजूदा वैल्यू को, नएgetFormFactors()तरीके से वापस लाया जा सकता है. (I6d08c, b/430554841)
एपीआई में हुए बदलाव
ProcessGlobalConfigमें एपीआई जोड़ें, ताकिWebViewके यूज़र इंटरफ़ेस (यूआई) थ्रेड को शुरू किया जा सके (I5e85a, b/433273850, b/397372092)WebViewStartupConfig.Builder#setProfilesToLoadDuringStartupAPI (I36451) के लिए, नई सुविधा का नाम जोड़ा गया- डिफ़ॉल्ट minSdk को API 21 से API 23 पर ले जाना (Ibdfca, b/380448311, b/435705964, b/435705223)
- ऑरिजिन से मैच किए गए हेडर एपीआई को अपडेट किया गया है. इससे, एक ही हेडर के नाम के लिए
setOriginMatchedHeaderको कई बार कॉल करके, हेडर की वैल्यू को बदला जा सकता है. साथ ही, यह देखने के लिए कि हेडर के नाम का इस्तेमाल पहले से किया जा रहा है या नहीं, एक नयाhasOriginMatchedHeaderतरीका भी जोड़ता है.
इस बदलाव से एपीआई को एक्सपेरिमेंट के तौर पर भी मार्क किया जाता है, क्योंकि फ़िलहाल यह हर हेडर वैल्यू के लिए सिर्फ़ एक वैल्यू और ऑरिजिन मैपिंग सेट करने की सुविधा देता है. साथ ही, आने वाले समय में इसमें बदलाव होने की संभावना है, ताकि इसे अलग-अलग ऑरिजिन पर मैप की गई कई वैल्यू के साथ इस्तेमाल किया जा सके. (I03365, b/419469873, b/429269470) Profile#prefetchUrlAsync()के लिए, यूज़र इंटरफ़ेस (यूआई) थ्रेड की ज़रूरत नहीं है. अब इसे किसी भी थ्रेड से कॉल किया जा सकता है. (I83d57)OutcomeReceiverCompatइंटरफ़ेस को हटा दिया गया है. अब आधिकारिकandroidx.core.os.OutcomeReceiverCompatवर्शन का इस्तेमाल किया जा सकता है. अब इस लाइब्रेरी के लिए,compileSdk35 या इसके बाद का वर्शन ज़रूरी है. (Ie1ea5)WebSettingsCompatमें,[is/set]IncludeCookiesOnShouldInterceptRequestEnabledका नाम बदलकर[are/set]CookiesIncludedInShouldInterceptRequestकर देता है. (Ife9e9, b/428924452)Profile.ExperimentalUrlPrefetchमें एक्सपेरिमेंटल एपीआई एनोटेशन जोड़े गए हैं. इन्हें पहले शामिल नहीं किया गया था. (Ic54eb, b/417458061)
वर्शन 1.15.0-alpha01
2 जुलाई, 2025
androidx.webkit:webkit:1.15.0-alpha01 रिलीज़ हो गया है. वर्शन 1.15.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- एक नई एपीआई, जो खास ऑरिजिन के अनुरोधों पर एचटीटीपी हेडर के नाम-वैल्यू पेयर सेट करती है.
Profile.setOriginMatchedHeaderतरीके से, ऐप्लिकेशन यह तय कर सकता है कि हेडर का नाम और वैल्यू, उन सभी एचटीटीपी/एचटीटीपीएस अनुरोधों पर सेट की जानी चाहिए जो दी गई प्रोफ़ाइल का इस्तेमाल करने वाले WebViews और सर्विस वर्कर से भेजे जाते हैं. साथ ही, ये अनुरोध उन ऑरिजिन से मैच होने चाहिए जिन्हें अनुमति वाली सूची में शामिल किया गया है. एपीआई, हर हेडर के नाम के लिए सिर्फ़ एक मैपिंग की अनुमति देता है. अगर हेडर का नाम पहले से सेट है, तो यह एक अपवाद दिखाएगा.
किसी मौजूदा मैपिंग को हटाने के लिए,Profile.clearOriginMatchedHeaderका इस्तेमाल करें. सभी मैपिंग हटाने के लिए,Profile.clearAllOriginMatchedHeadersका इस्तेमाल करें. (Ida7f1, b/419469873) - WebView और सर्विस वर्कर के लिए
shouldInterceptRequestकॉलबैक के हिस्से के तौर पर, कुकी को ऐक्सेस और सेट करने के लिए नया एपीआई.
फ़िलहाल,shouldInterceptRequestके हिस्से के तौर परCookieManagerAPI को ऐक्सेस करने वाले ऐप्लिकेशन डेवलपर, अब सीधेsetIncludeCookiesOnShouldInterceptRequestको कॉल करके कुकी हेडर चालू कर सकते हैं. इसके बाद, WebView, WebResourceRequest.getRequestHeaders() मैप मेंCookieहेडर जोड़ देगा. यह हेडर, अनुरोध पर लागू होने वाली कुकी के बारे में सटीक जानकारी देगा. इससे पार्टिशन्ड कुकी को भी सही तरीके से मैनेज किया जा सकेगा.
ऐप्लिकेशन, हाल ही में जोड़े गएWebResourceResponseCompat.setCookiesएपीआई के ज़रिएSet-Cookieहेडर वैल्यू दे सकते हैं. वहां जोड़ी गईSet-Cookieवैल्यू को WebView प्रोसेस करेगा. ऐसा रिस्पॉन्स हैंडलिंग के हिस्से के तौर पर किया जाएगा. (Idbfd1, b/414769380) Profileके लिए रेंडरर प्रोसेस को चालू करने वाला नया एक्सपेरिमेंटल एपीआई.
इस एपीआई का इस्तेमाल, WebView के जटिल लाइफ़साइकल वाले ऐप्लिकेशन कर सकते हैं. इससे यह पक्का किया जा सकता है कि रेंडरर प्रोसेस चालू है. भले ही, सभी WebView इंस्टेंस बंद कर दिए गए हों. (Ia8fc8)
एपीआई में हुए बदलाव
- नेविगेशन का यूआरएल देने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध Navigation इंटरफ़ेस में एक नया तरीका जोड़ें. (I1c6c0)
- प्रोफ़ाइल प्रीफ़ेच करने की सुविधा के नाम को अपडेट किया गया है, ताकि यह साफ़ तौर पर बताया जा सके कि अब बैकग्राउंड थ्रेड पर Prefetch API को चालू किया जा सकता है. (I7c83a)
वर्शन 1.14
वर्शन 1.14.0
4 जून, 2025
androidx.webkit:webkit:1.14.0 रिलीज़ हो गया है. वर्शन 1.14.0 में ये बदलाव शामिल हैं.
1.13.0 के बाद हुए अहम बदलाव
org.chromium.intent.action.PAYइंटेंट के ज़रिए Android के नेटिव पेमेंट ऐप्लिकेशन को चालू करने के लिए,PaymentRequestAPI लॉन्च किया गया है.PaymentRequestडिफ़ॉल्ट रूप से बंद होता है. इसे चालू करने के लिए,WebViewहोस्ट ऐप्लिकेशन WebSettingsCompat.setPaymentRequestEnabled(settings, true) को कॉल कर सकते हैं. इसके अलावा,PaymentRequestके लिएAndroidManifest.xmlमें<queries>टैग की ज़रूरत होती है. ज़्यादा जानकारी के लिए,setPaymentRequestEnabled()का दस्तावेज़ देखें.- पेश है एक्सपेरिमेंट के तौर पर उपलब्ध Navigation API. इसकी मदद से,
WebViewमें वेब नेविगेशन को बेहतर तरीके से ट्रैक और मैनेज किया जा सकता है. ये एपीआई, नेविगेशन इवेंट के बारे में ज़्यादा जानकारी देते हैं. पेज नेविगेशन के बारे में ज़्यादा जानकारी पाने के लिए, नए WebNaviagationClient इंटरफ़ेस के साथ WebViewCompat.setNavigationClient को कॉल करके शुरू करें. नेविगेशन लाइफ़साइकल के बारे में ज़्यादा जानने के लिए, कृपया नेविगेशन प्रज़ेंटेशन का लाइफ़साइकल देखें.
वर्शन 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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
startUpWebView()API (Ic29cd, b/406701301) में कॉन्टेक्स्ट को पैरामीटर के तौर पर जोड़ा गया
वर्शन 1.14.0-alpha01
9 अप्रैल, 2025
androidx.webkit:webkit:1.14.0-alpha01 रिलीज़ हो गया है. वर्शन 1.14.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
org.chromium.intent.action.PAYइंटेंट के ज़रिए Android के नेटिव पेमेंट ऐप्लिकेशन को चालू करने के लिए,PaymentRequestAPI लॉन्च किया गया है.PaymentRequestडिफ़ॉल्ट रूप से बंद होता है. WebView होस्ट करने वाले ऐप्लिकेशन, इसे चालू करने के लिएWebSettingsCompat.setPaymentRequestEnabled(settings, true)को कॉल कर सकते हैं. इसके अलावा,PaymentRequestके लिएAndroidManifest.xmlमें<queries>टैग की ज़रूरत होती है. ज़्यादा जानकारी के लिए,setPaymentRequestEnabled()का दस्तावेज़ देखें. (I3304e, b/404920055)- पेश है एक्सपेरिमेंट के तौर पर उपलब्ध नेविगेशन कॉलबैक. इस रिलीज़ में,
WebViewमें बेहतर वेब नेविगेशन ट्रैकिंग और मैनेजमेंट के लिए एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई पेश किए गए हैं. ये एपीआई, नेविगेशन इवेंट के बारे में ज़्यादा जानकारी देते हैं. मुख्य सुविधाएं:WebNavigationClientइंटरफ़ेस: एक नया इंटरफ़ेस,WebNavigationClientपेश करता है. इसमें नेविगेशन इवेंट के लिए कॉलबैक होते हैं:onNavigationStarted(Navigation navigation): नेविगेशन शुरू होने पर सूचना देता है.onNavigationRedirected(Navigation navigation): इस इवेंट से सूचना मिलती है कि नेविगेशन को किसी दूसरी जगह पर रीडायरेक्ट किया गया है.onNavigationCompleted(Navigation navigation): नेविगेशन पूरा होने पर सूचना देता है.Navigationइंटरफ़ेस: यह नेविगेशन के बारे में ज़्यादा जानकारी देता है. जैसे: यूआरएल, पेज लोड होने की स्थिति, एक ही दस्तावेज़ की स्थिति, फिर से लोड होने की स्थिति, इतिहास की स्थिति, वापस/आगे जाने की स्थिति, कमिट करने की स्थिति, गड़बड़ी वाले पेज की स्थिति, स्टेटस कोड, और सेशन को वापस लाने की स्थिति.Navigationऑब्जेक्ट, हर नेविगेशन के लिए यूनीक आइडेंटिफ़ायर के तौर पर काम करता है. इससे डेवलपर, मिलते-जुलते नेविगेशन इवेंट को एक-दूसरे से जोड़ पाते हैं.Pageक्लास:Pageक्लास के बारे में बताता है. यह पेज से जुड़े डेटा के लिए कुंजी के तौर पर काम करती है. (I351a6)
- कैशिंग की सुविधा देने वाले ऑब्जेक्ट के व्यवहार को टॉगल करने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध एक नया एपीआई लॉन्च किया गया है. (I14636)
एपीआई में हुए बदलाव
WebViewFeatureमेंPROFILE_URL_PREFETCHसुविधा की वैल्यू अपडेट की गई. (I606fd)- यह
WebView#saveStateकी तरह हीWebViewCompat#saveStateजोड़ता है. हालांकि, इससे वापस लाई गई स्थिति के साइज़ को सीमित किया जा सकता है. साथ ही, यह तय किया जा सकता है कि आगे के इतिहास की एंट्री सेव करनी हैं या नहीं. (Iea7d6) SpeculativeLoadingConfigAPI मेंmaxPrerendersकॉन्फ़िगरेशन जोड़ा गया (I67245)
वर्शन 1.13
वर्शन 1.13.0
12 मार्च, 2025
androidx.webkit:webkit:1.13.0 रिलीज़ हो गया है. वर्शन 1.13.0 में ये बदलाव शामिल हैं.
1.12.0 के बाद हुए अहम बदलाव
- यूआरएल को प्रीरेंडरिंग करने के लिए, एक नया एक्सपेरिमेंटल एपीआई लॉन्च किया गया है. इससे डेवलपर, यूआरएल को पहले से रेंडर कर पाएंगे. इससे नेविगेशन की प्रोसेस तेज़ी से पूरी होगी. (I0cfe7)
WebViewमें सेव किए गए ब्राउज़िंग डेटा को मिटाने के लिए, नए एपीआई का सेट लॉन्च किया गया है.android.webkit.WebStorageमें मौजूद मौजूदा एपीआई के बजाय,WebStorageCompatमें मौजूद नए एपीआई का इस्तेमाल करना चाहिए. ऐसा इसलिए, क्योंकि ये सभी लोकल स्टोरेज को मिटाने की गारंटी देते हैं. इनमें नेटवर्क कैश और कुकी के साथ-साथ, इंस्टॉल किए गए सभी सर्विस वर्कर भी शामिल हैं. अगर आने वाले समय में नए स्टोरेज एपीआई लॉन्च किए जाते हैं, तो इन नए तरीकों को अपडेट किया जाएगा, ताकि डिलीट किए गए स्टोरेज में उन्हें शामिल किया जा सके. (Iad54f, b/382273208)setPartitionedCookiesEnabledAPI जोड़ें. इससे डेवलपर,WebViewमें पार्टीशन की गई कुकी को चालू और बंद कर पाएंगे. (Ic506a, b/364904765)NetworkStatsManager/TrafficStatsका इस्तेमाल करके,WebViewके नेटवर्क ट्रैफ़िक का हिसाब रखने के लिए,WebViewमें सॉकेट टैगिंग एपीआई जोड़ें. यह सुविधा सिर्फ़WebViewM133 से उपलब्ध होगी. (Ica441, b/374932688)- एक्सपेरिमेंट के तौर पर,
WebViewएसिंक्रोनस स्टार्टअप एपीआई जोड़ा गया. (I94b8a) - प्रोफ़ाइल में यूआरएल प्रीफ़ेचिंग: डेवलपर को यूआरएल प्रीफ़ेचिंग ट्रिगर करने की अनुमति देने के लिए,
Profileमें एक नया एपीआई लॉन्च किया गया है. प्रीफ़ेचिंग की सुविधा बंद करना: चालू प्रीफ़ेचिंग की सुविधा बंद करने के लिए एक एपीआई जोड़ा गया है.(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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- प्रिरेंडर एपीआई में Async सफ़िक्स जोड़ें. नया नाम दिखाने के लिए,
NoVarySearchमें मौजूद किसी भी डेटा का नाम बदलकर हेडर करें. (Ie91c9) - यूआरएल प्रीरेंडरिंग एपीआई में एक्ज़ीक्यूटर पैरामीटर जोड़ा गया. साथ ही, एपीआई को सिर्फ़ यूज़र इंटरफ़ेस (यूआई) थ्रेड से कॉल करने की अनुमति दी जाती है. (I50520)
- प्रोफ़ाइल प्रीफ़ेच करने के अनुरोधों के लिए, कैश मेमोरी कॉन्फ़िगर करने के लिए एक एपीआई जोड़ें. यह इस प्रोफ़ाइल से जुड़े
WebViewsसे शुरू किए गए प्रीरेंडर अनुरोधों पर भी लागू होता है. (Iebb6e)
गड़बड़ियां ठीक की गईं
URLUtilCompat.guessFileNameके व्यवहार में बदलाव किया गया है. अब यह सिर्फ़mimeTypeपैरामीटर का इस्तेमाल करके, यूआरएल पैरामीटर से लिए गए फ़ाइल नामों के लिए एक्सटेंशन का सुझाव देगा. (I53ecd, b/382864232)
वर्शन 1.13.0-alpha03
15 जनवरी, 2025
androidx.webkit:webkit:1.13.0-alpha03 रिलीज़ हो गया है. वर्शन 1.13.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
- यूआरएल को प्रीरेंडरिंग करने के लिए, एक नया एक्सपेरिमेंटल एपीआई लॉन्च किया गया है. इससे डेवलपर, यूआरएल को पहले से रेंडर कर पाएंगे. इससे नेविगेशन की प्रोसेस तेज़ी से पूरी होगी. (I0cfe7)
WebViewमें सेव किए गए ब्राउज़िंग डेटा को मिटाने के लिए, नए एपीआई का सेट लॉन्च किया गया है.android.webkit.WebStorageमें मौजूद मौजूदा एपीआई के बजाय,WebStorageCompatमें मौजूद नए एपीआई का इस्तेमाल करना चाहिए. ऐसा इसलिए, क्योंकि ये सभी लोकल स्टोरेज को मिटाने की गारंटी देते हैं. इसमें नेटवर्क कैश और कुकी के साथ-साथ इंस्टॉल किए गए सभी सर्विस वर्कर शामिल हैं. अगर आने वाले समय में नए स्टोरेज एपीआई लॉन्च किए जाते हैं, तो इन नए तरीकों को अपडेट किया जाएगा, ताकि डिलीट किए गए स्टोरेज में उन्हें शामिल किया जा सके. (Iad54f, b/382273208)setPartitionedCookiesEnabledAPI जोड़ें. इससे डेवलपर,WebViewमें पार्टीशन की गई कुकी को चालू और बंद कर पाएंगे. (Ic506a, b/364904765)
एपीआई में हुए बदलाव
- प्रीफ़ेच एपीआई के लिए थ्रेड की ज़रूरी शर्त में बदलाव किया गया है, ताकि इसे सिर्फ़ यूज़र इंटरफ़ेस (यूआई) थ्रेड पर कॉल किया जा सके. (I866b5)
WebAuthnतरीकों को अपडेट करें, ताकि यह हाइलाइट किया जा सके कि उन्हें यूज़र इंटरफ़ेस (यूआई) थ्रेड पर कॉल किया जाना चाहिए. यह ज़रूरी शर्त पहले से ही लागू है. इस बदलाव से सिर्फ़ काम का एनोटेशन जोड़ा जाएगा. (I6d6ba)
वर्शन 1.13.0-alpha02
11 दिसंबर, 2024
androidx.webkit:webkit:1.13.0-alpha02 रिलीज़ हो गया है. वर्शन 1.13.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
NetworkStatsManager/TrafficStatsका इस्तेमाल करके,WebViewके नेटवर्क ट्रैफ़िक का हिसाब रखने के लिए,WebViewमें सॉकेट टैगिंग एपीआई जोड़ें. यह सुविधा सिर्फ़WebViewM133 से उपलब्ध होगी. (Ica441, b/374932688)
एपीआई में हुए बदलाव
- प्रीफ़ेच API को
PrefetchParameterका नाम बदलकरSpeculativeLoadingParamatersकरके, नयाPrefetchNetworkExceptionजोड़कर,PrefetchOperationCallbackकोOutcomeReceiverCompatसे बदलकर और javadoc को अपडेट करके अपडेट करें. (If5072) - WebView के एसिंक्रोनस स्टार्टअप एपीआई से, परफ़ॉर्मेंस से जुड़ी जानकारी पाएं.
- ऐप्लिकेशन के लिए, सिर्फ़ ऐसे init को ट्रिगर करने का विकल्प उपलब्ध कराएं जो यूज़र इंटरफ़ेस (यूआई) थ्रेड को ब्लॉक न करे. (I9bf2b)
गड़बड़ियां ठीक की गईं
- यह लाइब्रेरी अब JSpecify के nullness एनोटेशन का इस्तेमाल करती है. ये एनोटेशन, टाइप-यूज़ होते हैं. Kotlin डेवलपर को सही इस्तेमाल लागू करने के लिए, कंपाइलर के इस आर्ग्युमेंट का इस्तेमाल करना चाहिए:
-Xjspecify-annotations=strict(यह Kotlin कंपाइलर के 2.1.0 वर्शन से डिफ़ॉल्ट रूप से उपलब्ध है). (I0e4c5, b/326456246)
वर्शन 1.13.0-alpha01
13 नवंबर, 2024
androidx.webkit:webkit:1.13.0-alpha01 रिलीज़ हो गया है. वर्शन 1.13.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- एक्सपेरिमेंट के तौर पर,
WebViewएसिंक्रोनस स्टार्टअप एपीआई जोड़ा गया. (I94b8a) - प्रोफ़ाइल में यूआरएल प्रीफ़ेचिंग: हमने प्रोफ़ाइल में एक नया एपीआई लॉन्च किया है. इससे डेवलपर, यूआरएल प्रीफ़ेचिंग को ट्रिगर कर सकेंगे. प्रीफ़ेचिंग की सुविधा बंद करना: चालू प्रीफ़ेचिंग की सुविधा बंद करने के लिए, एक एपीआई जोड़ा गया है. (I42c5c)
एपीआई में हुए बदलाव
WebView.startSafeBrowsingका इस्तेमाल बंद करें. (If5626)
वर्शन 1.12
वर्शन 1.12.1
2 अक्टूबर, 2024
androidx.webkit:webkit:1.12.1 रिलीज़ हो गया है. वर्शन 1.12.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से, रिलीज़ में 1.12.0 वर्शन के एपीआई उपलब्ध नहीं थे.
वर्शन 1.12.0
18 सितंबर, 2024
androidx.webkit:webkit:1.12.0 रिलीज़ हो गया है. वर्शन 1.12.0 में ये बदलाव शामिल हैं.
1.11.0 के बाद हुए अहम बदलाव
WebSettingsCompatमें एक नया एपीआई जोड़ें, ताकि इसWebSettingsके लिए BackForwardCache को चालू/बंद किया जा सके. फ़िलहाल, इस एपीआई पर एक्सपेरिमेंट किया जा रहा है. आने वाले समय में, इसमें बदलाव हो सकता है. (aosp/3111705)WebSettingsCompatमें एक नया एपीआई जोड़ा गया है. इससे इसWebSettingsके लिए, स्पेकुलेटिव लोडिंग के व्यवहार को कंट्रोल किया जा सकेगा. फ़िलहाल, सिर्फ़ प्रीरेंडरिंग की सुविधा उपलब्ध है. फ़िलहाल, इस एपीआई पर एक्सपेरिमेंट किया जा रहा है. आने वाले समय में, इसमें बदलाव हो सकता है. (I13962)WebViewमें वेब ऑथेंटिकेशन की सुविधा चालू करने के लिए, एक नया एपीआई जोड़ा गया है. डेवलपर,WebSettingsCompat#setWebAuthenticationSupportका इस्तेमाल करके अपने ऐप्लिकेशन के लिए,WebViewमेंWebAuthnकॉल की सुविधा चालू/बंद कर सकते हैं. (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 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- नए प्लैटफ़ॉर्म एपीआई के ऐक्सेस की मैन्युअल तरीके से आउटलाइन बनाने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि AGP 7.3 या इसके बाद के वर्शन (जैसे, R8 का वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर, एपीआई मॉडलिंग के ज़रिए यह काम अपने-आप हो जाता है. साथ ही, AGP 8.1 या इसके बाद के वर्शन (जैसे, D8 का वर्शन 8.1) का इस्तेमाल करने पर, सभी बिल्ड के लिए यह काम अपने-आप हो जाता है. AGP का इस्तेमाल न करने वाले क्लाइंट को, D8 के वर्शन 8.1 या इसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (Ia60e0, b/345472586)
वर्शन 1.12.0-alpha02
12 जून, 2024
androidx.webkit:webkit:1.12.0-alpha02 रिलीज़ हो गया है. वर्शन 1.12.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
BackForwardCacheको चालू/बंद करने के लिए,WebSettingsCompatमें नया एपीआई जोड़ें. यह एपीआई एक्सपेरिमेंट के तौर पर उपलब्ध है. आने वाले समय में, इसमें बदलाव किया जा सकता है. (I64a38)- इस WebSettings के लिए, Speculative Loading के व्यवहार को कंट्रोल करने के लिए,
WebSettingsCompatमें एक नया एपीआई जोड़ा गया. फ़िलहाल, सिर्फ़ प्रीरेंडरिंग की सुविधा उपलब्ध है. फ़िलहाल, इस एपीआई पर एक्सपेरिमेंट किया जा रहा है. आने वाले समय में, इसमें बदलाव हो सकता है. (I13962)
एपीआई में हुए बदलाव
- अब कुछ तरीकों के बारे में
@UiThreadके साथ जानकारी दी गई है. (I6c7e0), (I44541) - थ्रेड-सेफ़ तरीकों के बारे में अब
@AnyThreadके साथ जानकारी दी गई है. (I70189) minSdkVersionको 19 से बढ़ाकर 21 किया जा रहा है. (Id7a43)
वर्शन 1.12.0-alpha01
17 अप्रैल, 2024
androidx.webkit:webkit:1.12.0-alpha01 रिलीज़ हो गया है. वर्शन 1.12.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- एक नया एपीआई जोड़ा गया है, ताकि
WebView. Developersमें वेब ऑथेंटिकेशन की सुविधा चालू की जा सके. ,WebSettingsCompat#setWebAuthenticationSupportका इस्तेमाल करके अपने ऐप्लिकेशन के लिए,WebViewमेंWebAuthnकॉल चालू/बंद कर सकता है. (I8187f)
वर्शन 1.11
वर्शन 1.11.0
1 मई, 2024
androidx.webkit:webkit:1.11.0 रिलीज़ हो गया है. वर्शन 1.11.0 में ये बदलाव शामिल हैं.
1.10.0 के बाद हुए अहम बदलाव
- ऐप्लिकेशन को
setAudioMutedऔरisAudioMutedएपीआई के ज़रिए,WebViewमें ऑडियो चलाने की सुविधा कंट्रोल करने की अनुमति दें. ये एपीआई, Chrome में किसी टैब को म्यूट करने की सुविधा के जैसे ही काम करते हैं. URLUtilCompatको पेश किया गया है. यहContent-Dispositionहेडर को पार्स करने की सुविधा देता है. ये हेडर, RFC 6266 में बताए गएfilename*कोड में बदली गई वैल्यू एट्रिब्यूट का इस्तेमाल करते हैं. कॉम्पैटिबिलिटी एपीआई,Content-Dispositionहेडर को पार्स करने का तरीका भी सीधे तौर पर दिखाता है. इसमें यूआरएल और 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 में ये बदलाव शामिल हैं.
नई सुविधाएं
WebViewsको म्यूट (और अनम्यूट) करने के लिए,setAudioMutedऔरisAudioMutedतरीके जोड़े गए. इस तरीके से,WebViewको ऑडियो चलाने से रोका जा सकेगा. (Ie7a33)
एपीआई में हुए बदलाव
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*कोड में बदली गई वैल्यू वाले एट्रिब्यूट का इस्तेमाल करते हैं. इन्हें आरएफ़सी 6266 में तय किया गया है. कॉम्पैटिबिलिटी एपीआई,Content-Dispositionहेडर को पार्स करने का तरीका भी सीधे तौर पर दिखाता है. इसमें यूआरएल और MIME-टाइप के आधार पर सुझाए गए फ़ाइल के नाम की ज़रूरत नहीं होती. (If6ae7, b/309927164)
वर्शन 1.10
वर्शन 1.10.0
24 जनवरी, 2024
androidx.webkit:webkit:1.10.0 रिलीज़ हो गया है. वर्शन 1.10.0 में ये बदलाव शामिल हैं.
1.9.0 के बाद हुए ज़रूरी बदलाव
- WebSettingsCompat में एक नया एपीआई जोड़ा गया है. इससे एक्सपेरिमेंट के तौर पर उपलब्ध Android WebView Media Integrity 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 में ये बदलाव शामिल हैं.
नई सुविधाएं
WebSettingsCompatमें एक नया एपीआई जोड़ा गया है. इससे एक्सपेरिमेंट के तौर पर उपलब्ध Android WebView Media Integrity API के व्यवहार को कंट्रोल किया जा सकता है. इसके लिए, एपीआई को पूरी तरह से बंद किया जा सकता है या एपीआई के जवाब में ऐप्लिकेशन की पहचान शेयर करने पर पाबंदी लगाई जा सकती है. इसे सभी ऑरिजिन के लिए और हर ऑरिजिन के हिसाब से टॉगल किया जा सकता है.
वर्शन 1.9
वर्शन 1.9.0
29 नवंबर, 2023
androidx.webkit:webkit:1.9.0 रिलीज़ हो गया है. वर्शन 1.9.0 में ये बदलाव शामिल हैं.
1.8.0 के बाद हुए अहम बदलाव
- वेबव्यू के लिए, एक नया मल्टी-प्रोफ़ाइल एपीआई जोड़ा गया है.
- प्रोफ़ाइल इंटरफ़ेस में, इस प्रोफ़ाइल से जुड़ा डेटा पाने के लिए अलग-अलग एपीआई होते हैं. जैसे, इसका नाम, GeoLocationPermissions, ServiceWorkerController, CookieManager, और WebStorage. ये ऑब्जेक्ट, प्रोफ़ाइल के हिसाब से अलग-अलग होते हैं. साथ ही, ऐप्लिकेशन में अलग-अलग प्रोफ़ाइलों के बीच जानकारी शेयर नहीं की जाती.
WebViewइंस्टेंस के लिए इस्तेमाल की गई प्रोफ़ाइल को WebViewCompat#setProfile तरीके का इस्तेमाल करके बदला जा सकता है. साथ ही, WebViewCompat#getProfile का इस्तेमाल करके इसे वापस पाया जा सकता है- हाल ही में लॉन्च किए गए ProfileStore की मदद से, अपने ऐप्लिकेशन में उपलब्ध प्रोफ़ाइलों को मैनेज किया जा सकता है. इसमें डिफ़ॉल्ट प्रोफ़ाइल भी शामिल है.
- CookieManager#getInstance जैसे मौजूदा WebView API, डिफ़ॉल्ट प्रोफ़ाइल पर काम करते रहेंगे.
- पेज लोड होने से पहले, JavaScript को इंजेक्ट और चलाने के लिए एक एपीआई जोड़ा गया है.
- WebViewCompat#addDocumentStartJavascript एपीआई की मदद से, ऐप्लिकेशन
WebViewमें स्क्रिप्ट इंजेक्ट कर सकते हैं. इन स्क्रिप्ट के बारे में यह गारंटी दी जाती है कि ये पेज की किसी भी स्क्रिप्ट के लागू होने से पहले चलेंगी. इस एपीआई की मदद से, ऐप्लिकेशन उन ऑरिजिन की टारगेट सूची तय कर सकता है जिन पर स्क्रिप्ट को चालू करना है. इससे यह पक्का होता है कि स्क्रिप्ट सिर्फ़ उन पेजों पर चलती है जिन पर इसे चलाना है. WebView#evaluateJavascript के उलट, यह एपीआई एम्बेड किए गए iframe में स्क्रिप्ट को लोड होने पर चलाने की अनुमति देगा. ऐप्लिकेशन, इस नए एपीआई का इस्तेमाल WebViewCompat#addWebMessageListener के साथ कर सकते हैं. इससे पेज पर मौजूद JavaScript के साथ भरोसेमंद तरीके से दोनों तरफ़ से कम्यूनिकेशन सेट अप किया जा सकता है.
- WebViewCompat#addDocumentStartJavascript एपीआई की मदद से, ऐप्लिकेशन
- Privacy Sandbox Attribution Reporting इवेंट को रजिस्टर करने के तरीके में बदलाव करने के लिए, एपीआई जोड़े गए.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior लॉन्च किया है. इससे डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं या WebView में मौजूद वेब कॉन्टेंट से. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआई
WebSettingsCompat#getAttributionRegistrationBehaviorजोड़ा है. - ज़्यादा जानकारी के लिए, Privacy Sandbox का दस्तावेज़ देखें.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior लॉन्च किया है. इससे डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं या WebView में मौजूद वेब कॉन्टेंट से. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआई
- क्लाइंट के संकेतों के लिए, उपयोगकर्ता-एजेंट मेटाडेटा को बदलने वाले एपीआई जोड़े गए.
- हमने एक नया एपीआई, WebSettingsCompat#setUserAgentMetadata लॉन्च किया है. इसका इस्तेमाल, WebView के लिए user-agent मेटाडेटा को बदलने के लिए किया जाता है. इसका इस्तेमाल, user-agent क्लाइंट हिंट को भरने के लिए किया जाता है. हमने एक और नया एपीआई WebSettingsCompat#getUserAgentMetadata भी जोड़ा है. इसका इस्तेमाल, मौजूदा user-agent ओवरराइड पाने के लिए किया जाता है. हम ऐप्लिकेशन को नए एपीआई का इस्तेमाल करने के लिए प्रोत्साहित करते हैं, ताकि जब भी ऐप्लिकेशन WebSettings.setUserAgentString का इस्तेमाल करके डिफ़ॉल्ट उपयोगकर्ता एजेंट स्ट्रिंग को बदलता है, तो सही ओवरराइड वैल्यू सेट की जा सकें. इससे यह पक्का किया जा सकेगा कि सभी स्थितियों में सही वैल्यू का इस्तेमाल किया जा रहा है.
वर्शन 1.9.0-rc01
15 नवंबर, 2023
androidx.webkit:webkit:1.9.0-rc01 रिलीज़ हो गया है. इस रिलीज़ में, 1.9.0-beta01 रिलीज़ के मुकाबले कोई बदलाव नहीं किया गया है.
वर्शन 1.9.0-beta01
1 नवंबर, 2023
androidx.webkit:webkit:1.9.0-beta01 रिलीज़ हो गया है. वर्शन 1.9.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- उपयोगकर्ता-एजेंट के मेटाडेटा एपीआई में, शून्य होने की समस्या को ठीक किया गया है. हम बिल्डर पैटर्न का इस्तेमाल करने के लिए,
BrandVersionक्लास को अपडेट करते हैं. साथ ही,UserAgentMetadataक्लास के गेटर और सेटर की नल वैल्यू को एक जैसा बनाते हैं. (Ibf195) @UiThreadकी मदद सेProfileStore,WebViewCompat#setProfile, औरWebViewCompat.getProfileको एनोटेट करना. (I499b2)
वर्शन 1.9.0-alpha01
18 अक्टूबर, 2023
androidx.webkit:webkit:1.9.0-alpha01 रिलीज़ हो गया है. वर्शन 1.9.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने मल्टी-प्रोफ़ाइल एपीआई जोड़ा है. इससे आपको
WebViewsके बीच अलग-अलग ब्राउज़िंग सेशन मिलते हैं. हर प्रोफ़ाइल का अपना डेटा होता है. जैसे, कुकी. प्रोफ़ाइलें बनाई जा सकती हैं और उन्हेंWebViewइंस्टेंस को असाइन किया जा सकता है. साथ ही, किसी भी डेटा को ऐक्सेस करने के लिए, उन्हें बाद में वापस पाया जा सकता है. प्रोफ़ाइल बनाने या मिटाने के लिए,ProfileStoreनाम की एक सिंगलटन क्लास उपलब्ध है. इससे आपको एपीआई की मदद से प्रोफ़ाइलें मैनेज करने में मदद मिलती है. जैसे,getOrCreateProfile,getProfile,getAllProfileNames, औरdeleteProfile.Profileक्लास में अलग-अलग एपीआई होंगे. इनका इस्तेमाल करके, इस प्रोफ़ाइल से जुड़ा डेटा पाया जा सकता है. जैसे, इसका नाम,GeoLocationPermissions,ServiceWorkerController,CookieManager, औरWebStorage. हरWebViewडिफ़ॉल्ट रूप से डिफ़ॉल्ट प्रोफ़ाइल के साथ चलेगा. हालांकि,WebViewCompat#setProfileका इस्तेमाल करके इसे बदला जा सकता है. इससे जुड़ी जानकारी के लिए,WebViewCompat#getProfileका इस्तेमाल करकेWebViewकी प्रोफ़ाइल को वापस पाया जा सकता है. (I32d22) - Attribution Reporting इवेंट रजिस्टर करने के तरीके में बदलाव करने के लिए, एपीआई जोड़े गए हैं. हमने एक नया एपीआई
WebSettingsCompat#setAttributionRegistrationBehaviorलॉन्च किया है. इसकी मदद से डेवलपर यह कॉन्फ़िगर कर सकते हैं कि सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं याWebViewमें मौजूद वेब कॉन्टेंट से. इस तरीके का इस्तेमाल,WebViewमें एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआईWebSettingsCompat#getAttributionRegistrationBehaviorजोड़ा है. ज़्यादा जानकारी के लिए, Privacy Sandbox का दस्तावेज़ देखें. (I661f2) - उपयोगकर्ता-एजेंट के मेटाडेटा को बदलने के लिए, एपीआई जोड़ें. हमने WebView के लिए एक नया एपीआई
WebSettingsCompat#setUserAgentMetadataलॉन्च किया है. इसका इस्तेमाल, उपयोगकर्ता एजेंट के मेटाडेटा को बदलने के लिए किया जाता है. इसका इस्तेमाल, उपयोगकर्ता एजेंट के क्लाइंट हिंट को भरने के लिए किया जाता है. हमने मौजूदा उपयोगकर्ता एजेंट के बदलावों को पाने के लिए, एक और नया एपीआईWebSettingsCompat#getUserAgentMetadataभी जोड़ा है. हम ऐप्लिकेशन को यह सुझाव देते हैं कि वे उपयोगकर्ता एजेंट को बदलने के बजाय, नई एपीआई का इस्तेमाल करके सही ओवरराइड वैल्यू सेट करें. (I74500) - पेज लोड होने के दौरान JavaScript को इंजेक्ट करने के लिए, एक एपीआई जोड़ें.
WebViewCompat.addDocumentStartJavascriptएपीआई की मदद से, ऐप्लिकेशन किसी WebView में स्क्रिप्ट इंजेक्ट कर सकते हैं. ये स्क्रिप्ट, पेज की किसी भी स्क्रिप्ट के एक्ज़ीक्यूट होने से पहले चलेंगी. इस एपीआई की मदद से, ऐप्लिकेशन उन ऑरिजिन की टारगेट सूची तय कर सकता है जिन पर स्क्रिप्ट को चालू करना है. इससे यह पक्का होता है कि स्क्रिप्ट सिर्फ़ उन पेजों पर चलती है जिन पर इसे चलाना है.WebView.evaluateJavascriptके उलट, यह एपीआई एम्बेड किए गए iframe में स्क्रिप्ट को लोड होने पर चलाने की अनुमति देगा. (Ide063)
वर्शन 1.8
वर्शन 1.8.0
6 सितंबर, 2023
androidx.webkit:webkit:1.8.0 रिलीज़ हो गया है. वर्शन 1.8.0 में ये बदलाव शामिल हैं.
1.7.0 के बाद हुए अहम बदलाव
WebMessagePortCompat#postMessage,JavaScriptReplyProxy#postMessage, औरWebViewCompat#postWebMessageके ज़रिएArrayBufferपास करने की सुविधा जोड़ी गई है. साथ ही,WebMessagePortCompatऔरWebMessageListenerके ज़रिए JavaScript सेArrayBufferपाने की सुविधा जोड़ी गई है. इसके अलावा,WebMessagePortCompatके ज़रिए JavaScript से ट्रांसफ़र किया जा सकने वालाArrayBufferपाने की सुविधा जोड़ी गई है. (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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- 'बाहरी योगदान' सेक्शन देखें.
बाहरी योगदान
WebMessagePortCompat#postMessage,JsReplyProxy#postMessage, औरWebViewCompat#postWebMessageपरArrayBufferपास करने की सुविधा जोड़ी गई है. साथ ही,WebMessagePortCompatऔरWebMessageListenerपर JavaScript सेArrayBufferपाने की सुविधा जोड़ी गई है. इसके अलावा,WebMessagePortCompatपर JavaScript से ट्रांसफ़र किए जा सकने वालेArrayBufferपाने की सुविधा जोड़ी गई है. कृपया ध्यान दें कि यह एपीआई सिर्फ़WebViewके वर्शन 116 से उपलब्ध होगा. (Ie7567, b/251152171)
वर्शन 1.7
वर्शन 1.7.0
24 मई, 2023
androidx.webkit:webkit:1.7.0 रिलीज़ हो गया है. वर्शन 1.7.0 में ये बदलाव शामिल हैं.
1.6.0 के बाद हुए ज़रूरी बदलाव
- हमने
WebViewमें इमेज को खींचकर छोड़ने की सुविधा जोड़ी है. अपने उपयोगकर्ताओं कोWebViewसे इमेज बाहर खींचने की सुविधा देने के लिए, अपने ऐप्लिकेशन के मेनिफ़ेस्ट में नयाDropDataContentProviderजोड़ें. इसके बारे में क्लास के दस्तावेज़ में बताया गया है. - हमने
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)एपीआई जोड़ा है. इसका इस्तेमाल, उन बेस डायरेक्ट्री को सेट करने के लिए किया जा सकता है जिनका इस्तेमाल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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- फ़ाइल के बजाय स्ट्रिंग स्वीकार करने के लिए, फ़ीचर फ़्लैग और तरीके के नाम में मामूली बदलाव किया गया है
setDirectoryBasePaths()(Ib0d0a)
वर्शन 1.7.0-alpha03
8 मार्च, 2023
androidx.webkit:webkit:1.7.0-alpha03 रिलीज़ हो गया है. वर्शन 1.7.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
ProcessGlobalConfig#setDirectoryBasePath(String, String)एपीआई जोड़ें. इसका इस्तेमाल उन बुनियादी डायरेक्ट्री को सेट करने के लिए किया जा सकता है जिनका इस्तेमाल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में, इमेज को खींचकर छोड़ने की सुविधा जोड़ रहे हैं. अपने ऐप्लिकेशन के मेनिफ़ेस्ट में नयाDropDataContentProviderजोड़कर, उपयोगकर्ताओं कोWebViewसे इमेज बाहर खींचने की सुविधा दी जा सकती है. (05a1a6)
वर्शन 1.6
वर्शन 1.6.1
22 मार्च, 2023
androidx.webkit:webkit:1.6.1 रिलीज़ हो गया है. वर्शन 1.6.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- proguard पार्स करने से जुड़ी गड़बड़ी को ठीक किया गया (Ia65c2)
वर्शन 1.6.0
25 जनवरी, 2023
androidx.webkit:webkit:1.6.0 रिलीज़ हो गया है. वर्शन 1.6.0 में ये बदलाव शामिल हैं.
1.5.0 के बाद हुए अहम बदलाव
- एक नया ProcessGlobalConfig एपीआई जोड़ा गया है. इससे ऐप्लिकेशन, कॉन्फ़िगरेशन सेटिंग दे सकते हैं. इन सेटिंग को WebView लोड करने से पहले सेट करना ज़रूरी होता है. जैसे, WebView डेटा डायरेक्ट्री का सफ़िक्स. ऐप्लिकेशन शुरू होने के दौरान, कॉन्फ़िगरेशन को जल्द से जल्द सेट अप और लागू किया जाना चाहिए. इससे यह पक्का किया जा सकेगा कि कोई अन्य थ्रेड,
WebViewको प्रोसेस में लोड करने वाले किसी तरीके को कॉल करने से पहले ऐसा हो. - android.webkit.CookieManager को
getCookieInfoनए तरीके से बढ़ाने के लिए, एक नया CookieManagerCompat एपीआई जोड़ा गया है. यह किसी यूआरएल पर सेट की गई सभी कुकी के सभी एट्रिब्यूट को वापस लाता है. यहCookieManagerमें मौजूद getCookie API से अलग है. यह सिर्फ़ कुकी के नाम और वैल्यू एट्रिब्यूट दिखाता है. WebSettingsCompatमें,EnterpriseAuthenticationAppLinkPolicyके असर को चालू/बंद करने के नए तरीके हैं. ऐसा तब होता है, जब एडमिन नेWebViewमें को सेट किया हो. साथ ही, मौजूदा सेटिंग पाने के नए तरीके भी हैं. इस सुविधा की मदद से, पुष्टि करने वाले यूआरएल को खोलने के बजाय, WebView में पुष्टि करने वाले ऐप्लिकेशन को खोला जा सकता है. इस सुविधा का असर उन डिवाइसों पर नहीं पड़ता जिन्हें एंटरप्राइज़ नीति के तहत मैनेज नहीं किया जाता.WebSettingsCompatमें एक नया एपीआई जोड़ा गया है. इससे ऐप्लिकेशन, अनुमति वाली सूची में शामिल ऑरिजिन कोX-Requested-Withहेडर में ऐप्लिकेशन के पैकेज का नाम साफ़ तौर पर भेज सकेंगे. आम तौर पर,WebViewसे किए गए हर अनुरोध पर यह हेडर भेजा जाता है.
वर्शन 1.6.0-rc01
11 जनवरी, 2023
androidx.webkit:webkit:1.6.0-rc01 रिलीज़ हो गया है. वर्शन 1.6.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- SDK < L पर चलने पर,
WebViewFeature.isStartupFeatureSupported(Context, String)मेंNullPointerExceptionको ठीक किया गया. (Ic7292)
वर्शन 1.6.0-beta01
7 दिसंबर, 2022
androidx.webkit:webkit:1.6.0-beta01 रिलीज़ हो गया है. वर्शन 1.6.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
ProcessGlobalConfigको बदलकर, सामान्य कंस्ट्रक्टर और स्टैटिक ऐप्लिकेशन मेथड का इस्तेमाल किया गया है. 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)- नया एपीआई जोड़ा गया है. इससे ऐप्लिकेशन, अनुमति वाली सूची में शामिल ऑरिजिन को X-Requested-With हेडर में ऐप्लिकेशन के पैकेज का नाम साफ़ तौर पर भेज सकेंगे. आम तौर पर,
WebViewसे किए गए हर अनुरोध पर यह हेडर भेजा जाता है. (I0adfe, b/226552535)
एपीआई में हुए बदलाव
WebSettingsCompat#setAlgorithmicDarkeningAllowedAPI,WebViewके वर्शन 105 और इसके बाद के वर्शन में, Android के सभी वर्शन पर काम करता है.WebViewके पिछले वर्शन में, एपीआई सिर्फ़ Android Q और इसके बाद के वर्शन पर काम करता था. इस वजह से, इस एपीआई को अब@RequiresApi(Build.VERSION_CODES.Q)के तौर पर मार्क नहीं किया गया है. (I3ac1d)
वर्शन 1.6.0-alpha02
24 अक्टूबर, 2022
androidx.webkit:webkit:1.6.0-alpha02 रिलीज़ हो गया है. वर्शन 1.6.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- यह एक नया
CookieManagerCompatक्लास औरgetCookieInfoएपीआई जोड़ता है. यह एपीआई, किसी यूआरएल पर सेट की गई सभी कुकी के लिए सभी एट्रिब्यूट को वापस लाता है. यहCookieManagerमें मौजूद मौजूदाgetCookieAPI से अलग है. यह सिर्फ़ कुकी के नाम और वैल्यू एट्रिब्यूट दिखाता है. (I07365, b/242161756)
वर्शन 1.6.0-alpha01
24 अगस्त, 2022
androidx.webkit:webkit:1.6.0-alpha01 रिलीज़ हो गया है. वर्शन 1.6.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
WebSettingsCompatमें एपीआई जोड़े गए हैं, ताकि एडमिन केWebViewमें सेट किए गएEnterpriseAuthenticationAppLinkPolicyके असर को चालू/बंद किया जा सके. इस सुविधा की मदद से,WebViewपुष्टि करने वाले यूआरएल के बजाय, पुष्टि करने वाला ऐप्लिकेशन खोल सकता है. इस सुविधा का असर उन डिवाइसों पर नहीं पड़ता जिन्हें एंटरप्राइज़ नीति के तहत मैनेज नहीं किया जाता.
वर्शन 1.5.0
वर्शन 1.5.0
24 अगस्त, 2022
androidx.webkit:webkit:1.5.0 रिलीज़ हो गया है. वर्शन 1.5.0 में ये बदलाव शामिल हैं.
1.4.0 के बाद हुए अहम बदलाव
WebSettingsCompatपर मौजूद नयाsetAlgorithmicDarkeningAllowedएपीआई, पुरानेsetForceDarkऔरsetForceDarkStrategyएपीआई की जगह लेगा. SDK 33 और इससे नए वर्शन (T) को टारगेट करने वाले ऐप्लिकेशन को नए एपीआई का इस्तेमाल करना चाहिए. ऐसा इसलिए, क्योंकि पुराने एपीआई का उन ऐप्लिकेशन पर कोई असर नहीं पड़ेगा.- कॉन्फ़िगर किए गए प्रॉक्सी का इस्तेमाल करने के लिए, यूआरएल की अनुमति वाली सूची को अब
ProxyCofig.Builderके ज़रिए सेट किया जा सकता है. इसके लिए,setReverseBypassEnabledकोtrueपर सेट करें. इस सेटिंग के लागू होने पर, अन्य सभी यूआरएल कॉन्फ़िगर की गई प्रॉक्सी को बायपास कर देंगे.
वर्शन 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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- एल्गोरिदम के हिसाब से स्क्रीन को हल्का करने से जुड़े एपीआई को अब एनोटेट किया गया है. इसके लिए, एपीआई लेवल Q की ज़रूरत होती है. एपीआई का असर, Q से पहले के एपीआई लेवल पर नहीं पड़ेगा. ऐसा इसलिए, क्योंकि इन डिवाइसों पर डार्क थीम का विकल्प उपलब्ध नहीं है. (I0905e)
वर्शन 1.5.0-alpha01
18 मई, 2022
androidx.webkit:webkit:1.5.0-alpha01 रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
WebViewसे भेजे गए X-Client-Data हेडर की वैल्यू पाने के लिए,WebViewCompatपर नईgetVariationsHeader()विधि जोड़ें. इस पैरामीटर से मिलने वाली वैल्यू, base64 कोड में बदला गया ClientVariations protobuf होगा.WebSettingsCompatपर एपीआई जोड़ें, ताकि targetSdk >= 33 वाले ऐप्लिकेशन के लिए, एल्गोरिथम के हिसाब से इमेज को हल्का या गहरा करने की सुविधा को अनुमति दी जा सके या अनुमति न दी जा सके. (I29597)
एपीआई में हुए बदलाव
- रिवर्स बायपास सेट करने के लिए,
ProxyCofig.Builderमें नया तरीका जोड़ें. रिवर्स बायपास को 'सही है' पर सेट करने का मतलब है कि बायपास सूची में मौजूद यूआरएल ही प्रॉक्सी सेटिंग का इस्तेमाल करेंगे. (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 के बाद हुए मुख्य बदलाव
setSafeBrowsingWhitelist()की जगह इस्तेमाल करने के लिए, नयाsetSafeBrowsingAllowlist()एपीआई जोड़ा गया है. इससे ऐप्लिकेशन, अपने कोड को अपडेट कर पाते हैं, ताकि वे ऐसे शब्दों का इस्तेमाल न करें जो किसी समुदाय को अलग-थलग करते हैं. साथ ही, वे Android SDK और WebView के उसी वर्शन के साथ काम कर पाते हैं जो बंद किए गए एपीआई के साथ काम करते थे.- 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 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
setSafeBrowsingWhitelist()की जगह इस्तेमाल करने के लिए, नयाWebViewCompat#setSafeBrowsingAllowlist()एपीआई जोड़ा गया. इससे ऐप्लिकेशन को अपने कोड को अपडेट करने में मदद मिलती है, ताकि वे ऐसी शब्दावली का इस्तेमाल न करें जिससे किसी को बुरा लगे. साथ ही, वे Android SDK और WebView के उसी वर्शन के साथ काम कर सकें जो बंद किए गए एपीआई के साथ काम करते थे. (I8d65d)
वर्शन 1.3.0
वर्शन 1.3.0
19 अगस्त, 2020
androidx.webkit:webkit:1.3.0 रिलीज़ हो गया है. वर्शन 1.3.0 में ये बदलाव शामिल हैं.
1.2.0 के बाद हुए मुख्य बदलाव
- ForceDarkStrategy API, WebView को डार्क मोड में दिखाने की सुविधा को ज़्यादा कंट्रोल देता है. जैसे, सीएसएस/वेब कॉन्टेंट को डार्क मोड में दिखाना बनाम अपने-आप डार्क मोड में दिखाना.
- WebMessageListener और इससे जुड़े एपीआई, वेब कॉन्टेंट और WebView एम्बेडर ऐप्लिकेशन के बीच बातचीत करने का एक आसान और सुरक्षित तरीका उपलब्ध कराते हैं.
isMultiProcessEnabledयह एपीआई यह जांच करता है कि WebView, मल्टी प्रोसेस में चल रहा है या नहीं. ऐसा Android O से शुरू किया जा सकता है. इसका मतलब है कि वेब कॉन्टेंट को सैंडबॉक्स किए गए रेंडरर प्रोसेस में रेंडर किया जाता है. यह ऐप्लिकेशन प्रोसेस से अलग होती है. इस सैंडबॉक्स किए गए रेंडरर को एक ही ऐप्लिकेशन में मौजूद अन्य WebView के साथ शेयर किया जा सकता है. हालांकि, इसे अन्य ऐप्लिकेशन प्रोसेस के साथ शेयर नहीं किया जाता.
वर्शन 1.3.0-rc02
5 अगस्त, 2020
androidx.webkit:webkit:1.3.0-rc02 रिलीज़ हो गया है. वर्शन 1.3.0-rc02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- इससे, ऐप्लिकेशन के साथ काम न करने की समस्या ठीक हो जाती है. इस समस्या में, अगर आपका ऐप्लिकेशन Android Studio के इंस्टैंट रन फ़ीचर के साथ शुरू किया गया था, तो स्थानीय डेवलपमेंट के दौरान
WebMessageListenerकभी-कभी क्रैश हो जाता था.
वर्शन 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 में ये बदलाव शामिल हैं.
नई सुविधाएं
ForceDarkStrategyWebView को डार्क मोड में दिखाने की सुविधा को कंट्रोल करने के लिए एपीआई (सीएसएस/वेब कॉन्टेंट को डार्क मोड में दिखाने की सुविधा बनाम ऑटो डार्क मोड).WebMessageListenerएपीआई, वेब कॉन्टेंट और वेबव्यू एम्बेड करने वाले ऐप्लिकेशन के बीच बातचीत करने का आसान और सुरक्षित तरीका उपलब्ध कराते हैं.MultiProcessEnabledयह एपीआई यह जांच करता है कि WebView, मल्टी प्रोसेस मोड में चल रहा है या नहीं.
वर्शन 1.3.0-alpha03
27 मई, 2020
androidx.webkit:webkit:1.3.0-alpha03 रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
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 मल्टी प्रोसेस मोड में चल रहा है या नहीं.
एपीआई में हुए बदलाव
- सभी डार्क रणनीति के कॉन्स्टेंट में अब
DARK_STRATEGYप्रीफ़िक्स जोड़ा गया है.
वर्शन 1.3.0-alpha01
15 अप्रैल, 2020
androidx.webkit:webkit:1.3.0-alpha01 रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
ForceDarkStrategyWebViewको कंट्रोल करने के लिए एपीआई (सीएसएस/वेब कॉन्टेंट को गहरा करने की सुविधा बनाम अपने-आप गहरा होने की सुविधा).WebMessageListenerएपीआई, वेब कॉन्टेंट और वेबव्यू एम्बेड करने वाले ऐप्लिकेशन के बीच बातचीत करने का आसान और सुरक्षित तरीका उपलब्ध कराते हैं.
वर्शन 1.2.0
वर्शन 1.2.0
4 मार्च, 2020
androidx.webkit:webkit:1.2.0 रिलीज़ हो गया है. वर्शन 1.2.0 में ये बदलाव शामिल हैं.
1.1.0 के बाद हुए मुख्य बदलाव
- ForceDark API जोड़ा गया है. इससे यह कंट्रोल किया जा सकेगा कि WebViews को डार्क मोड में रेंडर किया जाना चाहिए या नहीं.
वर्शन 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, यह कंट्रोल करने के लिए कि WebViews को डार्क मोड में रेंडर किया जाना चाहिए या नहीं.
वर्शन 1.1.0
वर्शन 1.1.0
7 नवंबर, 2019
androidx.webkit:webkit:1.1.0 रिलीज़ हो गया है. वर्शन 1.1.0 में ये बदलाव शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
- setWebViewClient() और setWebChromeClient() के साथ काम करने वाले Getter API.
- ProxyController API का इस्तेमाल करके, किसी ऐप्लिकेशन के WebViews के लिए नेटवर्क का अनुरोध प्रॉक्सी सेट करें.
- WebViewAssetLoader API, अनुरोध को इंटरसेप्ट करके ऐप्लिकेशन की डेटा डायरेक्ट्री से APK ऐसेट, संसाधन, और फ़ाइलें लोड करने की प्रोसेस को आसान बनाता है. इससे सीओआरएस को बंद किए बिना, वेब और स्थानीय संसाधनों को ऐक्सेस किया जा सकता है.
- डीबग करने के मकसद से, WebView की ट्रेसिंग की जानकारी इकट्ठा करने के लिए TracingController API.
- RenderProcess API, WebView रेंडरर सेवाओं को मैनेज करने के लिए. साथ ही, यह पता लगाने के लिए कि खराब कॉन्टेंट की वजह से, WebView रेंडरर कब काम नहीं करते.
- मौजूदा एपीआई को अपडेट किया गया है, ताकि उनमें नल वैल्यू (
@NonNull,@Nullable) और थ्रेड (@UiThread,@WorkerThread) एनोटेशन शामिल किए जा सकें.
वर्शन 1.1.0-rc01
9 अक्टूबर, 2019
androidx.webkit:webkit:1.1.0-rc01 रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक कर दिया गया है जिसकी वजह से, शून्य क्लाइंट पास करने पर
setWebViewRenderProcessClient()क्रैश हो सकता था.
वर्शन 1.1.0-beta01
5 सितंबर, 2019
androidx.webkit:webkit:1.1.0-beta01 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
- ऐप्लिकेशन की डेटा डायरेक्ट्री से फ़ाइलें लोड करने के लिए,
InternalStoragePathHandlerमें नयाWebViewAssetLoader.
एपीआई में हुए बदलाव
ProxyConfig#getProxyRules()अबProxyRuleइंस्टेंस की ऐसी सूची दिखाता है जिसमें बदलाव नहीं किया जा सकता. यह एक नई क्लास है, जो स्कीम फ़िल्टर और उसके प्रॉक्सी यूआरएल को होल्ड करती है.
गड़बड़ियां ठीक की गईं
- अगर फ़ाइल पाथ से एमआईएमई टाइप का पता नहीं चलता है, तो
WebViewAssetLoaderडिफ़ॉल्ट रूप से "text/plain" एमआईएमई टाइप पर सेट हो जाता है. हालांकि, ऐसा तब होता है, जब एमआईएमई टाइप शून्य न हो. WebViewAssetLoaderअब पाथ के नाम में खास वर्ण वाली फ़ाइलों को लोड करते समयNullPointerExceptionनहीं दिखाता है.
वर्शन 1.1.0-alpha02
7 अगस्त, 2019
androidx.webkit:webkit:1.1.0-alpha02 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
WebViewAssetLoader,PathHandlerइंटरफ़ेस को दिखाता है, ताकि ऐप्लिकेशन पाथ को मैनेज करने की कस्टम सुविधा बना सकें.
एपीआई में हुए बदलाव
WebViewAssetLoaderअब एक फ़ाइनल क्लास है, क्योंकि इसे सबक्लास नहीं किया जा सकता.WebViewAssetLoader#PathHandlerको लागू करने के तरीके अब सार्वजनिक तौर पर उपलब्ध हैं और इन्हें बदला नहीं जा सकता.- ProxyConfig के तरीके के नामों में मामूली बदलाव किए गए हैं.
ProxyController: सर्वर से सीधे कनेक्ट करने के लिए, नए तरीकेaddDirect()औरaddDirect(String)जोड़े गए; DIRECT स्ट्रिंग हटा दी गई.- मौजूदा एपीआई को अपडेट किया गया है, ताकि उनमें नल वैल्यू (
@NonNull,@Nullable) और थ्रेड (@UiThread,@WorkerThread) एनोटेशन शामिल किए जा सकें.
वर्शन 1.1.0-alpha01
7 मई, 2019
androidx.webkit:webkit:1.1.0-alpha01 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
setWebViewClient()औरsetWebChromeClient()के साथ काम करने वाले Getter API- ProxyController API का इस्तेमाल करके, किसी ऐप्लिकेशन के WebViews के लिए नेटवर्क का अनुरोध प्रॉक्सी सेट करें.
- AssetLoader API की मदद से, अनुरोध को इंटरसेप्ट करके APK ऐसेट और संसाधनों को आसानी से लोड किया जा सकता है. इससे सीओआरएस को बंद किए बिना, वेब संसाधनों को ऐक्सेस किया जा सकता है.
- डीबग करने के मकसद से, WebView की ट्रेसिंग की जानकारी इकट्ठा करने के लिए TracingController API.
- RenderProcess API, WebView रेंडरर सेवाओं को मैनेज करने के लिए. साथ ही, यह पता लगाने के लिए कि खराब कॉन्टेंट की वजह से, WebView रेंडरर कब काम नहीं करते.
गड़बड़ियां ठीक की गईं
- मौजूदा एपीआई के लिए, दस्तावेज़ के फ़ॉर्मैट में मामूली बदलाव किए गए हैं.