Webkit
नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
27 अगस्त, 2025 | 1.14.0 | - | - | 1.15.0-alpha02 |
डिपेंडेंसी का एलान करना
Webkit पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google का मेवन डेटाबेस पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { implementation "androidx.webkit:webkit:1.14.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.14.0") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. कृपया नई लाइब्रेरी बनाने से पहले, इस लाइब्रेरी में मौजूद मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
वर्शन 1.15
वर्शन 1.15.0-alpha02
27 अगस्त, 2025
androidx.webkit:webkit:1.15.0-alpha02
रिलीज़ हो गया है. वर्शन 1.15.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
Profile#preconnect
को जोड़ता है. इससे ऐप्लिकेशन, किसी ऑरिजिन पर नेविगेट करने से पहले उससे कनेक्शन खोल सकते हैं. इससे, आने वाले समय में लोड होने की प्रोसेस को तेज़ किया जा सकता है. (I8db41)WebViewCompat
में एक नयाprerenderUrlAsync
एपीआई जोड़ा गया है. इससे ऐप्लिकेशन, यूआरएल को वेबव्यू में दिखाए जाने से पहले ही प्रीरेंडर कर सकते हैं.
प्रीरेंडरिंग की मदद से, पेज को पहले से फ़ेच करके लोड करने की परफ़ॉर्मेंस को बेहतर बनाया जा सकता है. जब उपयोगकर्ता यूआरएल पर जाता है, तो उसे पहले से रेंडर किया गया पेज तुरंत दिखता है.
इन एपीआई को पहले एक्सपेरिमेंट के तौर पर रिलीज़ किया गया था. अब इनका इस्तेमाल@OptIn
एनोटेशन के बिना किया जा सकता है. (Ie14f5)- अब
startUpWebView
API को कॉल करते समय, सिंक किए गए तरीके से लोड करने के लिए प्रोफ़ाइलों का सेट तय किया जा सकता है. इसेWebViewStartUpConfig.Builder
में नए तरीके (I9a6e6) को प्रोफ़ाइल के नाम पास करके कॉन्फ़िगर किया जाता है WebSettings
ऑब्जेक्ट पर BackForwardCache को चालू/बंद करने के लिए,WebSettingsCompat
में एक नया एपीआई जोड़ें. इस एपीआई को पहले एक्सपेरिमेंट के तौर पर रिलीज़ किया गया था. अब इसका इस्तेमाल@OptIn
एनोटेशन के बिना किया जा सकता है. (Ie413b)- User-Agent के डिवाइस के साइज़, डाइमेंशन या कॉन्फ़िगरेशन को बदलने की सुविधा जोड़ी गई है.
UserAgentMetadata
क्लास में, User-Agent के मेटाडेटा के डिवाइस के साइज़, डाइमेंशन या कॉन्फ़िगरेशन को पाने और सेट करने के नए तरीके हैं.UserAgentMetadata.Builder
में,Sec-CH-UA-Form-Factors
यूज़र-एजेंट क्लाइंट हिंट को बदलने के लिए, एक नयाsetFormFactors()
तरीका है.getFormFactors()
नए तरीके का इस्तेमाल करके, बदली गई मौजूदा वैल्यू वापस पाई जा सकती हैं. (I6d08c, b/430554841)
एपीआई में हुए बदलाव
WebView
के यूज़र इंटरफ़ेस (यूआई) थ्रेड को शुरू करने के लिए,ProcessGlobalConfig
में एपीआई जोड़ें (I5e85a, b/433273850, b/397372092)WebViewStartupConfig.Builder#setProfilesToLoadDuringStartup
API (I36451) के लिए नई सुविधा का नाम जोड़ें- डिफ़ॉल्ट minSdk को API 21 से API 23 पर ले जाना (Ibdfca, b/380448311, b/435705964, b/435705223)
- ओरिजन से मैच किए गए हेडर एपीआई को अपडेट किया गया है. इससे, एक ही हेडर के नाम के लिए
setOriginMatchedHeader
को कई बार कॉल करके, हेडर की वैल्यू को बदला जा सकता है. साथ ही, यह देखने के लिए कि हेडर का नाम पहले से इस्तेमाल में है या नहीं, एक नयाhasOriginMatchedHeader
तरीका भी जोड़ता है.
इस बदलाव से एपीआई को एक्सपेरिमेंट के तौर पर भी मार्क किया जाता है, क्योंकि फ़िलहाल यह हर हेडर वैल्यू के लिए सिर्फ़ एक वैल्यू और ऑरिजिन मैपिंग सेट करने की सुविधा देता है. साथ ही, आने वाले समय में इसमें बदलाव हो सकते हैं, ताकि यह अलग-अलग ऑरिजिन पर मैप की गई कई वैल्यू के साथ काम कर सके. (I03365, b/419469873, b/429269470) Profile#prefetchUrlAsync()
के लिए, यूज़र इंटरफ़ेस (यूआई) थ्रेड की ज़रूरी शर्त हटा दी गई है. अब इसे किसी भी थ्रेड से कॉल किया जा सकता है. (I83d57)- आधिकारिक
androidx.core.os.OutcomeReceiverCompat
वर्शन के लिए,OutcomeReceiverCompat
इंटरफ़ेस को हटा दिया गया है. अब इस लाइब्रेरी के लिए,compileSdk
35 या इसके बाद का वर्शन ज़रूरी है. (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
के तहतCookieManager
API को ऐक्सेस करने वाले ऐप्लिकेशन डेवलपर, अब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 के बाद हुए अहम बदलाव
- पेश है
PaymentRequest
एपीआई. इसकी मदद से,org.chromium.intent.action.PAY
इंटेंट के ज़रिए Android के नेटिव पेमेंट ऐप्लिकेशन को चालू किया जा सकता है.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()
एपीआई (Ic29cd, b/406701301) में पैरामीटर के तौर पर कॉन्टेक्स्ट जोड़ें
वर्शन 1.14.0-alpha01
9 अप्रैल, 2025
androidx.webkit:webkit:1.14.0-alpha01
रिलीज़ हो गया है. वर्शन 1.14.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- पेश है
PaymentRequest
एपीआई. इसकी मदद से,org.chromium.intent.action.PAY
इंटेंट के ज़रिए Android के नेटिव पेमेंट ऐप्लिकेशन को चालू किया जा सकता है.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) maxPrerenders
API (I67245) मेंmaxPrerenders
कॉन्फ़िगरेशन जोड़ेंSpeculativeLoadingConfig
वर्शन 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)setPartitionedCookiesEnabled
एपीआई जोड़ें. इससे डेवलपर,WebView
में पार्टीशन की गई कुकी को चालू और बंद कर सकेंगे. (Ic506a, b/364904765)NetworkStatsManager
/TrafficStats
का इस्तेमाल करके,WebView
के नेटवर्क ट्रैफ़िक का हिसाब रखने के लिए,WebView
में सॉकेट टैगिंग एपीआई जोड़ें. यह सुविधा सिर्फ़WebView
M133 से उपलब्ध होगी. (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)setPartitionedCookiesEnabled
एपीआई जोड़ें. इससे डेवलपर,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
में सॉकेट टैगिंग एपीआई जोड़ें. यह सुविधा सिर्फ़WebView
M133 से उपलब्ध होगी. (Ica441, b/374932688)
एपीआई में हुए बदलाव
- Prefetch API को अपडेट करें. इसके लिए,
PrefetchParameter
का नाम बदलकरSpeculativeLoadingParamaters
करें, नयाPrefetchNetworkException
जोड़ें,PrefetchOperationCallback
कोOutcomeReceiverCompat
से बदलें, और javadoc को अपडेट करें. (If5072) - WebView के एसिंक्रोनस स्टार्टअप एपीआई से, परफ़ॉर्मेंस से जुड़ी जानकारी पाएं.
- ऐप्लिकेशन के लिए, सिर्फ़ ऐसे init को ट्रिगर करने का विकल्प उपलब्ध कराएं जो यूज़र इंटरफ़ेस थ्रेड को ब्लॉक न करे. (I9bf2b)
गड़बड़ियां ठीक की गईं
- यह लाइब्रेरी अब JSpecify nullness annotations का इस्तेमाल करती है. ये टाइप-यूज़ होते हैं. 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 के बाद हुए अहम बदलाव
- इस
WebSettings
के लिए, BackForwardCache को चालू/बंद करने के लिए,WebSettingsCompat
में एक नया एपीआई जोड़ें. फ़िलहाल, इस एपीआई पर एक्सपेरिमेंट किया जा रहा है. आने वाले समय में, इसमें बदलाव हो सकता है. (aosp/3111705) - इस
WebSettings
के लिए, स्पेकुलेटिव लोडिंग के व्यवहार को कंट्रोल करने के लिए,WebSettingsCompat
में एक नया एपीआई जोड़ें. फ़िलहाल, सिर्फ़ प्रीरेंडरिंग उपलब्ध है. फ़िलहाल, इस एपीआई पर एक्सपेरिमेंट किया जा रहा है. आने वाले समय में, इसमें बदलाव हो सकता है. (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
में वेब ऑथेंटिकेशन की सुविधा चालू की जा सके.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 के बाद हुए अहम बदलाव
- ऐप्लिकेशन को
WebView
में ऑडियो चलाने की सुविधा कंट्रोल करने की अनुमति दें. इसके लिए, नएsetAudioMuted
औरisAudioMuted
एपीआई का इस्तेमाल करें. ये एपीआई, Chrome में किसी टैब को म्यूट करने के जैसे ही होते हैं. URLUtilCompat
को लॉन्च किया गया है. यहContent-Disposition
हेडर को पार्स करने की सुविधा देता है. ये हेडर, RFC 6266 में बताए गएfilename*
कोड में बदली गई वैल्यू एट्रिब्यूट का इस्तेमाल करते हैं. साथ ही, Compatibility API सीधे तौर पर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 में तय किया गया है. साथ ही, Compatibility API सीधे तौर पर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 की मदद से, अपने ऐप्लिकेशन में उपलब्ध प्रोफ़ाइलों को मैनेज किया जा सकता है. इसमें डिफ़ॉल्ट प्रोफ़ाइल भी शामिल है.
- मौजूदा WebView API, जैसे कि CookieManager#getInstance, डिफ़ॉल्ट प्रोफ़ाइल पर काम करते रहेंगे.
- पेज लोड होने से पहले, JavaScript को इंजेक्ट और चलाने के लिए एक एपीआई जोड़ा गया है.
- WebViewCompat#addDocumentStartJavascript API की मदद से, ऐप्लिकेशन
WebView
में स्क्रिप्ट इंजेक्ट कर सकते हैं. इन स्क्रिप्ट के बारे में यह गारंटी दी जाती है कि ये पेज की किसी भी स्क्रिप्ट के लागू होने से पहले चलेंगी. इस एपीआई की मदद से, ऐप्लिकेशन उन ऑरिजिन की टारगेट सूची तय कर सकता है जिन पर स्क्रिप्ट को चालू करना है. इससे यह पक्का होता है कि स्क्रिप्ट सिर्फ़ उन पेजों पर चलती है जिन पर इसे चलाना है. WebView#evaluateJavascript के उलट, यह एपीआई एम्बेड किए गए iframe में स्क्रिप्ट को लोड होने पर चलाने की अनुमति देगा. ऐप्लिकेशन, इस नए एपीआई का इस्तेमाल WebViewCompat#addWebMessageListener के साथ कर सकते हैं. इससे पेज में मौजूद JavaScript के साथ भरोसेमंद तरीके से दोनों तरफ़ से कम्यूनिकेशन सेट अप किया जा सकता है.
- WebViewCompat#addDocumentStartJavascript API की मदद से, ऐप्लिकेशन
- Privacy Sandbox Attribution Reporting इवेंट को रजिस्टर करने के तरीके में बदलाव करने के लिए, एपीआई जोड़े गए हैं.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior पेश किया है. इससे डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं या WebView में मौजूद वेब कॉन्टेंट से. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआई
WebSettingsCompat#getAttributionRegistrationBehavior
जोड़ा है. - ज़्यादा जानकारी के लिए, Privacy Sandbox का दस्तावेज़ देखें.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior पेश किया है. इससे डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं या WebView में मौजूद वेब कॉन्टेंट से. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआई
- क्लाइंट के संकेतों के लिए, उपयोगकर्ता एजेंट के मेटाडेटा को बदलने वाले एपीआई जोड़े गए.
- हमने एक नया एपीआई, WebSettingsCompat#setUserAgentMetadata लॉन्च किया है. इसका इस्तेमाल, उपयोगकर्ता-एजेंट क्लाइंट हिंट को भरने के लिए इस्तेमाल किए गए WebView के उपयोगकर्ता-एजेंट मेटाडेटा को बदलने के लिए किया जाता है. हमने एक और नया एपीआई WebSettingsCompat#getUserAgentMetadata भी जोड़ा है. इसका इस्तेमाल, उपयोगकर्ता-एजेंट के मौजूदा बदलावों को पाने के लिए किया जाता है. हम ऐप्लिकेशन को नया एपीआई इस्तेमाल करने का सुझाव देते हैं, ताकि जब भी ऐप्लिकेशन 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
पेश किया है. इसकी मदद से डेवलपर यह कॉन्फ़िगर कर सकते हैं कि सोर्स और ट्रिगर, ऐप्लिकेशन से रजिस्टर किए गए हैं याWebSettingsCompat#setAttributionRegistrationBehavior
में मौजूद वेब कॉन्टेंट से.WebView
इस तरीके का इस्तेमाल,WebView
में एट्रिब्यूशन रिपोर्टिंग की सुविधा बंद करने के लिए भी किया जा सकता है. इसके अलावा, हमने मौजूदा व्यवहार को पाने के लिए एक नया एपीआईWebSettingsCompat#getAttributionRegistrationBehavior
जोड़ा है. ज़्यादा जानकारी के लिए, Privacy Sandbox का दस्तावेज़ देखें. (I661f2) - उपयोगकर्ता-एजेंट के मेटाडेटा को बदलने के लिए, एपीआई जोड़ें. हमने WebView के लिए, यूज़र-एजेंट मेटाडेटा को बदलने वाला एक नया एपीआई
WebSettingsCompat#setUserAgentMetadata
लॉन्च किया है. इसका इस्तेमाल, यूज़र-एजेंट क्लाइंट हिंट को भरने के लिए किया जाता है. हमने मौजूदा यूज़र-एजेंट को बदलने वाला एक और नया एपीआईWebSettingsCompat#getUserAgentMetadata
भी जोड़ा है. हम ऐप्लिकेशन को उपयोगकर्ता एजेंट बदलने के बजाय, नई एपीआई का इस्तेमाल करके सही ओवरराइड वैल्यू सेट करने के लिए बढ़ावा देते हैं. (I74500) - पेज लोड होने के दौरान JavaScript को इंजेक्ट करने के लिए, एक एपीआई जोड़ें.
WebViewCompat.addDocumentStartJavascript
एपीआई की मदद से, ऐप्लिकेशन किसी वेबव्यू में स्क्रिप्ट इंजेक्ट कर सकते हैं. ये स्क्रिप्ट, पेज की किसी भी स्क्रिप्ट के एक्ज़ीक्यूट होने से पहले चलेंगी. इस एपीआई की मदद से, ऐप्लिकेशन उन ऑरिजिन की टारगेट सूची तय कर सकता है जिन पर स्क्रिप्ट को चालू करना है. इससे यह पक्का होता है कि स्क्रिप्ट सिर्फ़ उन पेजों पर चलती है जिन पर इसे चलाना है.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
में इमेज को खींचकर छोड़ने की सुविधा जोड़ी है. अपने ऐप्लिकेशन के मेनिफ़ेस्ट में नयाDropDataContentProvider
जोड़कर, उपयोगकर्ताओं कोWebView
से इमेज बाहर खींचने की सुविधा दी जा सकती है. इसके बारे में क्लास के दस्तावेज़ में बताया गया है. - हमने
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 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- फ़ाइल को स्ट्रिंग के बजाय स्वीकार करने के लिए, फ़ीचर फ़्लैग और तरीके के नाम में मामूली बदलाव किया गया है (Ib0d0a)
setDirectoryBasePaths()
वर्शन 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
को लोड करने वाले किसी तरीके को कॉल करने से पहले ऐसा हो. - CookieManagerCompat नाम का नया एपीआई जोड़ा गया है. इससे android.webkit.CookieManager को
getCookieInfo
नाम के नए तरीके के साथ बढ़ाया जा सकता है. यह तरीका, किसी यूआरएल पर सेट की गई सभी कुकी के सभी एट्रिब्यूट को वापस लाता है. यह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#setAlgorithmicDarkeningAllowed
एपीआई, Android के सभी वर्शन पर काम करता है. इसके लिए,WebView
का वर्शन 105 या इसके बाद का होना चाहिए.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
में मौजूदgetCookie
एपीआई से अलग है. यह सिर्फ़ कुकी के नाम और वैल्यू एट्रिब्यूट दिखाता है. (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
एपीआई की जगह लेगा. एसडीके 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 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
WebViewCompat#setSafeBrowsingAllowlist()
को बदलने के लिए, एक नयाWebViewCompat#setSafeBrowsingAllowlist()
एपीआई जोड़ा गया.setSafeBrowsingWhitelist()
इससे ऐप्लिकेशन को अपने कोड को अपडेट करने में मदद मिलती है, ताकि वे ऐसे शब्दों का इस्तेमाल न करें जो किसी खास समूह के लिए आपत्तिजनक हो सकते हैं. साथ ही, वे 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 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इस वर्शन में,
WebMessageListener
के साथ काम करने से जुड़ी समस्या को ठीक किया गया है. इस समस्या की वजह से, स्थानीय डेवलपमेंट के दौरान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
WebView को डार्क करने की सुविधा को कंट्रोल करने वाला एपीआई (सीएसएस/वेब कॉन्टेंट को डार्क करने की सुविधा बनाम ऑटो डार्कनिंग).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 में ये कमिट शामिल हैं.
नई सुविधाएं
ForceDarkStrategy
WebView
को कंट्रोल करने के लिए एपीआई (सीएसएस/वेब कॉन्टेंट को डार्क करने की सुविधा बनाम अपने-आप डार्क होने की सुविधा).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, किसी ऐप्लिकेशन के WebView के लिए नेटवर्क अनुरोध प्रॉक्सी सेट करने के लिए.
- WebViewAssetLoader API, अनुरोध इंटरसेप्ट करके ऐप्लिकेशन डेटा डायरेक्ट्री से APK ऐसेट, संसाधन, और फ़ाइलें लोड करने की प्रोसेस को आसान बनाता है. इससे सीओआरएस को बंद किए बिना, वेब और स्थानीय संसाधनों को ऐक्सेस किया जा सकता है.
- डीबग करने के मकसद से, WebView की ट्रेसिंग की जानकारी इकट्ठा करने के लिए TracingController API का इस्तेमाल किया जाता है.
- RenderProcess API, वेबव्यू रेंडरर सेवाओं को मैनेज करने के लिए. साथ ही, यह पता लगाने के लिए कि खराब कॉन्टेंट की वजह से, वेबव्यू रेंडरर कब काम नहीं करते.
- मौजूदा एपीआई को अपडेट किया गया है, ताकि उनमें नल वैल्यू (
@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
रिलीज़ हो गया है. इस वर्शन में शामिल कमिट यहां देखे जा सकते हैं.
नई सुविधाएं
- ऐप्लिकेशन की डेटा डायरेक्ट्री से फ़ाइलें लोड करने के लिए,
WebViewAssetLoader
में नयाInternalStoragePathHandler
.
एपीआई में हुए बदलाव
ProxyConfig#getProxyRules()
अबProxyRule
इंस्टेंस की ऐसी सूची दिखाता है जिसे बदला नहीं जा सकता. यह एक नई क्लास है, जो स्कीम फ़िल्टर और उससे जुड़े प्रॉक्सी यूआरएल को होल्ड करती है.
गड़बड़ियां ठीक की गईं
- जब फ़ाइल पाथ से MIME टाइप का पता नहीं चलता है, तब
WebViewAssetLoader
डिफ़ॉल्ट रूप से "text/plain" MIME टाइप पर सेट हो जाता है. हालांकि, ऐसा तब होता है, जब MIME टाइप शून्य न हो. 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, किसी ऐप्लिकेशन के WebView के लिए नेटवर्क अनुरोध प्रॉक्सी सेट करने के लिए.
- AssetLoader API, अनुरोध को इंटरसेप्ट करके APK ऐसेट और संसाधनों को आसानी से लोड करने की सुविधा देता है. इससे सीओआरएस को बंद किए बिना, वेब संसाधनों को ऐक्सेस किया जा सकता है.
- डीबग करने के मकसद से, WebView की ट्रेसिंग की जानकारी इकट्ठा करने के लिए TracingController API का इस्तेमाल किया जाता है.
- RenderProcess API, वेबव्यू रेंडरर सेवाओं को मैनेज करने के लिए. साथ ही, यह पता लगाने के लिए कि खराब कॉन्टेंट की वजह से, वेबव्यू रेंडरर कब काम नहीं करते.
गड़बड़ियां ठीक की गईं
- मौजूदा एपीआई के लिए, दस्तावेज़ के फ़ॉर्मैट में मामूली बदलाव किए गए हैं.