Webkit
नया अपडेट | रिलीज़ किया गया जांचा और परखा हुआ वर्शन | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
11 दिसंबर, 2024 | 1.9.0 | - | - | 1.13.0-alpha02 |
डिपेंडेंसी का एलान करना
Webkit पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { implementation "androidx.webkit:webkit:1.9.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.9.0") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव
आपके सुझाव, शिकायत या राय से हमें Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. नई लाइब्रेरी बनाने से पहले, कृपया इस लाइब्रेरी में मौजूद मौजूदा समस्याओं पर एक नज़र डालें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या पर अपना वोट जोड़ा जा सकता है.
ज़्यादा जानकारी के लिए, समस्या ट्रैकर का दस्तावेज़ देखें.
वर्शन 1.13
वर्शन 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)
एपीआई में हुए बदलाव
PrefetchParameter
का नाम बदलकरSpeculativeLoadingParamaters
करें, नयाPrefetchNetworkException
जोड़ें,PrefetchOperationCallback
कोOutcomeReceiverCompat
से बदलें, और Javadoc को अपडेट करें. इससे, Prefetch API अपडेट हो जाएगा. (If5072)- WebView के एसिंक्रोनस स्टार्टअप एपीआई से गड़बड़ी की जानकारी पाएं.
- ऐप्लिकेशन के लिए, सिर्फ़ init को ट्रिगर करने का विकल्प दें, जो यूज़र इंटरफ़ेस (यूआई) थ्रेड को ब्लॉक न करता हो. (I9bf2b)
गड़बड़ियां ठीक की गईं
- यह लाइब्रेरी अब JSpecify nullness एनोटेशन का इस्तेमाल करती है, जो टाइप-इस्तेमाल के लिए हैं. Kotlin डेवलपर को सही तरीके से इस्तेमाल करने के लिए, कंपाइलर के इन आर्ग्युमेंट का इस्तेमाल करना चाहिए:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(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 API उपलब्ध नहीं हो पा रहे थे.
वर्शन 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 के लिए, अनुमानित तरीके से लोड करने के व्यवहार को कंट्रोल करने के लिए,
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 के बाद किए गए अहम बदलाव
- ऐप्लिकेशन को
WebView
में ऑडियो चलाने की अनुमति दें. इसके लिए, नएsetAudioMuted
औरisAudioMuted
एपीआई का इस्तेमाल करें. ये एपीआई, Chrome में किसी टैब को म्यूट करने की तरह काम करते हैं. URLUtilCompat
एट्रिब्यूट को जोड़ा गया है. यह आरएफ़सी 6266 में बताए गए तरीके से,filename*
एन्क्रिप्ट की गई वैल्यू एट्रिब्यूट का इस्तेमाल करने वालेContent-Disposition
हेडर को पार्स करने में मदद करता है. 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
हेडर को पार्स करने की सुविधा देता है. ये हेडर, आरएफ़सी 6266 में बताए गए तरीके से,filename*
कोड में बदली गई वैल्यू एट्रिब्यूट का इस्तेमाल करते हैं. 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. ये ऑब्जेक्ट, प्रोफ़ाइल के हिसाब से होते हैं. साथ ही, ऐप्लिकेशन में अलग-अलग प्रोफ़ाइलों के बीच जानकारी शेयर नहीं की जाती.
- WebViewCompat#setProfile तरीके का इस्तेमाल करके,
WebView
इंस्टेंस की प्रोफ़ाइल बदली जा सकती है. साथ ही, WebViewCompat#getProfile का इस्तेमाल करके, प्रोफ़ाइल को वापस पाया जा सकता है - हाल ही में लॉन्च किए गए ProfileStore की मदद से, अपने ऐप्लिकेशन में मौजूद प्रोफ़ाइलों को मैनेज किया जा सकता है. इनमें डिफ़ॉल्ट प्रोफ़ाइल भी शामिल है.
- CookieManager#getInstance जैसे मौजूदा वेबव्यू एपीआई, डिफ़ॉल्ट प्रोफ़ाइल पर काम करते रहेंगे.
- पेज लोड होने से पहले, JavaScript को इंजेक्ट और चलाने के लिए एपीआई जोड़ा गया.
- WebViewCompat#addDocumentStartJavascript API की मदद से, ऐप्लिकेशन किसी
WebView
में स्क्रिप्ट इंजेक्ट कर सकते हैं. यह पक्का होता है कि ये स्क्रिप्ट, पेज की किसी भी स्क्रिप्ट के लागू होने से पहले चलेंगी. एपीआई की मदद से, ऐप्लिकेशन को स्क्रिप्ट को चालू करने के लिए ऑरिजिन की टारगेट सूची तय करने की सुविधा मिलती है. इससे यह पक्का किया जा सकता है कि स्क्रिप्ट सिर्फ़ टारगेट किए गए पेजों पर ही चलती है. WebView#evaluateJavascript के उलट, यह एपीआई एम्बेड किए गए iframes में स्क्रिप्ट को लोड होने पर उन्हें चलाने की अनुमति देगा. ऐप्लिकेशन, इस नए एपीआई का इस्तेमाल WebViewCompat#addWebMessageListener के साथ कर सकते हैं, ताकि पेज में JavaScript के साथ दोतरफ़ा कम्यूनिकेशन को भरोसेमंद तरीके से सेट अप किया जा सके.
- WebViewCompat#addDocumentStartJavascript API की मदद से, ऐप्लिकेशन किसी
- Privacy Sandbox Attribution Reporting इवेंट को रजिस्टर करने के तरीके में बदलाव करने के लिए, एपीआई जोड़े गए हैं.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior पेश किया है. इसकी मदद से, डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से या वेबव्यू में मौजूद वेब कॉन्टेंट से रजिस्टर किए गए हैं या नहीं. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग को बंद करने के लिए भी किया जा सकता है. साथ ही, हमने मौजूदा व्यवहार जानने के लिए एक नया एपीआई
WebSettingsCompat#getAttributionRegistrationBehavior
जोड़ा है. - ज़्यादा जानकारी के लिए, Privacy Sandbox से जुड़ा दस्तावेज़ देखें.
- हमने एक नया एपीआई WebSettingsCompat#setAttributionRegistrationBehavior पेश किया है. इसकी मदद से, डेवलपर यह कॉन्फ़िगर कर सकते हैं कि एट्रिब्यूशन सोर्स और ट्रिगर, ऐप्लिकेशन से या वेबव्यू में मौजूद वेब कॉन्टेंट से रजिस्टर किए गए हैं या नहीं. इस तरीके का इस्तेमाल, वेबव्यू में एट्रिब्यूशन रिपोर्टिंग को बंद करने के लिए भी किया जा सकता है. साथ ही, हमने मौजूदा व्यवहार जानने के लिए एक नया एपीआई
- क्लाइंट के हिंट के लिए, उपयोगकर्ता एजेंट मेटाडेटा को बदलने के लिए एपीआई जोड़े गए.
- हमने एक नया एपीआई, 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) ProfileStore
,WebViewCompat#setProfile
, औरWebViewCompat.getProfile
पर@UiThread
का इस्तेमाल करके एनोटेट किया जा रहा है. (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) - एट्रिब्यूशन रिपोर्टिंग इवेंट को रजिस्टर करने के तरीके में बदलाव करने के लिए, एपीआई जोड़ें. हमने एक नया एपीआई
WebSettingsCompat#setAttributionRegistrationBehavior
पेश किया है. इसकी मदद से, डेवलपर यह कॉन्फ़िगर कर सकते हैं कि सोर्स और ट्रिगर,WebView
में मौजूद ऐप्लिकेशन से आए हैं या वेब कॉन्टेंट से. इस तरीके का इस्तेमाल,WebView
में एट्रिब्यूशन रिपोर्टिंग को बंद करने के लिए भी किया जा सकता है. साथ ही, हमने मौजूदा व्यवहार जानने के लिए एक नया एपीआईWebSettingsCompat#getAttributionRegistrationBehavior
जोड़ा है. ज़्यादा जानकारी के लिए, Privacy Sandbox से जुड़ा दस्तावेज़ देखें. (I661f2) - उपयोगकर्ता-एजेंट मेटाडेटा को बदलने के लिए एपीआई जोड़ें. हमने वेबव्यू के लिए यूज़र-एजेंट मेटाडेटा को बदलने के लिए, एक नया एपीआई
WebSettingsCompat#setUserAgentMetadata
लॉन्च किया है. इसका इस्तेमाल, यूज़र-एजेंट क्लाइंट हिंट को पॉप्युलेट करने के लिए किया जाता है. साथ ही, हमने मौजूदा यूज़र-एजेंट बदलावों को पाने के लिए, एक और नया एपीआईWebSettingsCompat#getUserAgentMetadata
भी जोड़ा है. हमारा सुझाव है कि ऐप्लिकेशन, बदलते हुए उपयोगकर्ता-एजेंट के बजाय, सही बदलाव करने की वैल्यू सेट करने के लिए नए एपीआई का इस्तेमाल करें. (I74500) - पेज लोड होने के दौरान चलाए जाने वाले JavaScript को इंजेक्ट करने के लिए, कोई एपीआई जोड़ें.
WebViewCompat.addDocumentStartJavascript
API की मदद से, ऐप्लिकेशन किसी वेबव्यू में स्क्रिप्ट इंजेक्ट कर सकते हैं. ये स्क्रिप्ट, किसी भी पेज स्क्रिप्ट के लागू होने से पहले चलती हैं. एपीआई की मदद से, ऐप्लिकेशन को स्क्रिप्ट को चालू करने के लिए ऑरिजिन की टारगेट सूची तय करने की सुविधा मिलती है. इससे यह पक्का किया जा सकता है कि स्क्रिप्ट सिर्फ़ टारगेट किए गए पेजों पर ही चलेगी.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)
गड़बड़ियां ठीक की गईं
DexGuard
का इस्तेमाल करते समय, अमान्यProGuard
नियम की वजह से होने वाली बिल्ड गड़बड़ियों को ठीक करना (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
लोड करने वाले तरीके को कॉल करने से पहले, ऐसा कर ले. - CookieManagerCompat एपीआई को जोड़ा गया है, ताकि
getCookieInfo
के नए तरीके की मदद से android.webkit.CookieManager को बड़ा किया जा सके. यह तरीका, किसी खास यूआरएल पर सेट की गई सभी कुकी के सभी एट्रिब्यूट को वापस लाता है. यहCookieManager
में मौजूद getCookie API से अलग है, जो कुकी के सिर्फ़ नाम और वैल्यू एट्रिब्यूट दिखाता है. - अगर एडमिन ने
WebView
मेंEnterpriseAuthenticationAppLinkPolicy
सेट किया है, तोWebSettingsCompat
मेंEnterpriseAuthenticationAppLinkPolicy
के असर को चालू/बंद करने और मौजूदा सेटिंग पाने के नए तरीके हैं. इस सुविधा की मदद से, वेबव्यू पुष्टि करने वाले यूआरएल के बजाय, पुष्टि करने वाला ऐप्लिकेशन खोल सकता है. इस सुविधा का असर उन डिवाइसों पर नहीं पड़ता जिन्हें किसी एंटरप्राइज़ नीति के तहत मैनेज नहीं किया जाता. 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
एपीआई,WebView
के वर्शन 105 और उसके बाद के सभी Android वर्शन पर काम करता है.WebView
के पिछले वर्शन, सिर्फ़ Android Q और उसके बाद के वर्शन पर API के साथ काम करते थे. इस वजह से, इस एपीआई को अब@RequiresApi(Build.VERSION_CODES.Q)
के तौर पर मार्क नहीं किया गया है. (I3ac1d)
वर्शन 1.6.0-alpha02
24 अक्टूबर, 2022
androidx.webkit:webkit:1.6.0-alpha02
रिलीज़ हो गया है. 1.6.0-alpha02 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
getCookieInfo
एपीआई के साथ-साथ एक नईCookieManagerCompat
क्लास जोड़ता है. यह एपीआई, किसी खास यूआरएल पर सेट की गई सभी कुकी के सभी एट्रिब्यूट को वापस लाता है. यहCookieManager
में मौजूदgetCookie
एपीआई से अलग है, जो कुकी के सिर्फ़ नाम और वैल्यू एट्रिब्यूट दिखाता है. (I07365, b/242161756)
वर्शन 1.6.0-alpha01
24 अगस्त, 2022
androidx.webkit:webkit:1.6.0-alpha01
रिलीज़ हो गया है. 1.6.0-alpha01 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
WebView
में एडमिन के सेट करने पर,EnterpriseAuthenticationAppLinkPolicy
के असर को चालू/बंद करने के लिए,WebSettingsCompat
में एपीआई जोड़े गए हैं. इस सुविधा की मदद से,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 होगी.- targetSdk >= 33 वाले ऐप्लिकेशन के लिए, एल्गोरिदम की मदद से स्क्रीन को गहरे रंग में करने की सुविधा को अनुमति देने/अनुमति न देने के लिए,
WebSettingsCompat
पर एपीआई जोड़ें. (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()
एपीआई जोड़ा गया. इससे ऐप्लिकेशन को अपना कोड अपडेट करने में मदद मिलती है, ताकि वे सभी को शामिल करने वाले शब्दों का इस्तेमाल न करें. साथ ही, वे अब भी बंद किए गए API की तरह ही Android SDK टूल और वेबव्यू के वर्शन का इस्तेमाल कर सकते हैं.- 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 टूल और वेबव्यू के वर्शन का इस्तेमाल कर सकते हैं. (I8d65d)
वर्शन 1.3.0
वर्शन 1.3.0
19 अगस्त, 2020
androidx.webkit:webkit:1.3.0
रिलीज़ हो गया है. 1.3.0 वर्शन में ये बदलाव शामिल हैं.
1.2.0 के बाद किए गए मुख्य बदलाव
- ForceDarkStrategy API, वेबव्यू को गहरे रंग में दिखाने की सुविधा को ज़्यादा कंट्रोल देता है. जैसे, सीएसएस/वेब कॉन्टेंट को गहरे रंग में दिखाने के बजाय, अपने-आप गहरे रंग में दिखाना.
- WebMessageListener और उससे जुड़े एपीआई, वेब कॉन्टेंट और वेबव्यू एम्बेड करने वाले ऐप्लिकेशन के बीच कम्यूनिकेशन करने के लिए, आसान और सुरक्षित तरीका उपलब्ध कराते हैं.
isMultiProcessEnabled
यह पता लगाने के लिए एपीआई कि WebView, मल्टी प्रोसेस में चल रहा है या नहीं. यह सुविधा Android O से शुरू की गई है. इसका मतलब है कि वेब कॉन्टेंट को ऐप्लिकेशन प्रोसेस से अलग, सैंडबॉक्स किए गए रेंडरर की प्रोसेस में रेंडर किया जाता है. सैंडबॉक्स किए गए इस रेंडरर को, एक ही ऐप्लिकेशन में मौजूद अन्य वेबव्यू के साथ शेयर किया जा सकता है. हालांकि, इसे ऐप्लिकेशन की अन्य प्रोसेस के साथ शेयर नहीं किया जाता.
वर्शन 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 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
ForceDarkStrategy
WebView को गहरे रंग में दिखाने की सुविधा को कंट्रोल करने वाला एपीआई (CSS/वेब कॉन्टेंट को गहरे रंग में दिखाने के बजाय, अपने-आप गहरे रंग में दिखाने की सुविधा).WebMessageListener
एपीआई, वेब कॉन्टेंट और वेबव्यू एम्बेड करने वाले ऐप्लिकेशन के बीच कम्यूनिकेशन करने के लिए, आसान और सुरक्षित तरीका उपलब्ध कराते हैं.MultiProcessEnabled
यह पता लगाने के लिए एपीआई कि वेबव्यू, मल्टी प्रोसेस मोड में चल रहा है या नहीं.
वर्शन 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 जोड़ा गया है, ताकि यह कंट्रोल किया जा सके कि वेबव्यू को डार्क मोड में रेंडर किया जाना चाहिए या नहीं.
वर्शन 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, यह कंट्रोल करता है कि वेबव्यू को डार्क मोड में रेंडर किया जाना चाहिए या नहीं.
वर्शन 1.1.0
वर्शन 1.1.0
7 नवंबर, 2019
androidx.webkit:webkit:1.1.0
रिलीज़ हो गया है. 1.1.0 वर्शन में ये बदलाव शामिल हैं.
1.0.0 के बाद किए गए अहम बदलाव
- setWebViewClient() और setWebChromeClient() के साथ काम करने वाले, गेट करने वाले एपीआई.
- ProxyController API, किसी ऐप्लिकेशन के वेबव्यू के लिए नेटवर्क अनुरोध प्रॉक्सी सेट करने के लिए.
- WebViewAssetLoader API, अनुरोध को इंटरसेप्ट करके ऐप्लिकेशन डेटा डायरेक्ट्री से APK एसेट, संसाधन, और फ़ाइलों को लोड करने की प्रोसेस को आसान बनाता है. इससे सीओआरएस को बंद किए बिना, वेब और स्थानीय संसाधनों को ऐक्सेस किया जा सकता है.
- 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
इंस्टेंस की ऐसी सूची दिखाता है जिसे बदला नहीं जा सकता. यह एक नई क्लास है, जिसमें स्कीम फ़िल्टर और उससे जुड़ा प्रॉक्सी यूआरएल होता है.
गड़बड़ियां ठीक की गईं
- जब
WebViewAssetLoader
, फ़ाइल पाथ से MIME टाइप का अनुमान नहीं लगा पाता, तो वह डिफ़ॉल्ट रूप से "text/plain" 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, किसी ऐप्लिकेशन के वेबव्यू के लिए नेटवर्क अनुरोध प्रॉक्सी सेट करने के लिए.
- AssetLoader API, अनुरोध को इंटरसेप्ट करके APK की एसेट और संसाधनों को लोड करने की प्रोसेस को आसान बनाता है. साथ ही, सीओआरएस को बंद किए बिना वेब संसाधनों को ऐक्सेस करने की अनुमति देता है.
- TracingController API, डीबग करने के लिए वेबव्यू की ट्रैकिंग की जानकारी इकट्ठा करता है.
- वेबव्यू रेंडरर सेवाओं को मैनेज करने के लिए RenderProcess API. साथ ही, यह पता लगाने के लिए कि खराब तरीके से काम करने वाले कॉन्टेंट की वजह से, वेबव्यू रेंडरर कब काम करना बंद कर देते हैं.
गड़बड़ियां ठीक की गईं
- मौजूदा एपीआई के लिए, दस्तावेज़ के फ़ॉर्मैट में कुछ बदलाव किए गए हैं.