وب کیت

با APIهای WebView مدرن در اندروید 5 و بالاتر کار کنید.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
4 سپتامبر 2024 1.9.0 1.12.0-rc01 - -

اعلام وابستگی ها

برای افزودن وابستگی به Webkit، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر ، مخزن Maven Google را بخوانید.

وابستگی‌های مصنوعات مورد نیاز خود را در فایل build.gradle برای برنامه یا ماژول خود اضافه کنید:

شیار

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

کاتلین

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

برای اطلاعات بیشتر درباره وابستگی‌ها، به افزودن وابستگی‌های ساخت نگاه کنید.

بازخورد

بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.

یک شماره جدید ایجاد کنید

برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.

نسخه 1.12

نسخه 1.12.0-rc01

4 سپتامبر 2024

androidx.webkit:webkit:1.12.0-rc01 منتشر شد. این نسخه هیچ تغییری نسبت به نسخه 1.12.0-beta01 ندارد.

نسخه 1.12.0-beta01

21 آگوست 2024

androidx.webkit:webkit:1.12.0-beta01 منتشر شد. نسخه 1.12.0-beta01 حاوی این تعهدات است.

رفع اشکال

  • طرح دستی دسترسی به APIهای پلتفرم جدید حذف شد زیرا این به طور خودکار از طریق مدلسازی API هنگام استفاده از R8 با AGP 7.3 یا جدیدتر (مثلا R8 نسخه 3.3) و برای همه ساخت‌ها هنگام استفاده از AGP 8.1 یا بالاتر (به عنوان مثال D8 نسخه 8.1) اتفاق می‌افتد. به مشتریانی که از AGP استفاده نمی‌کنند، توصیه می‌شود به نسخه 8.1 یا بالاتر D8 به‌روزرسانی کنند. برای جزئیات بیشتر به این مقاله مراجعه کنید. ( Ia60e0 , b/345472586 )

نسخه 1.12.0-alpha02

12 ژوئن 2024

androidx.webkit:webkit:1.12.0-alpha02 منتشر شد. نسخه 1.12.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • برای فعال/غیرفعال کردن BackForwardCache یک API جدید به WebSettingsCompat اضافه کنید. این API آزمایشی است و در آینده قابل تغییر است. ( I64a38 )
  • یک API جدید به WebSettingsCompat اضافه کنید تا رفتار بارگذاری گمانه زنی را برای این WebSettings کنترل کنید. در حال حاضر فقط Prerender در دسترس است. این API آزمایشی است و در آینده قابل تغییر است. ( I13962 )

تغییرات API

  • برخی از روش‌ها اکنون در صورت لزوم با @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 حاوی این commit ها است.

تغییرات API

  • یک API جدید برای فعال کردن احراز هویت وب در WebView. Developers می‌توانند با استفاده از WebSettingsCompat#setWebAuthenticationSupport تماس‌های WebAuthn را در WebView برای برنامه‌های خود فعال/غیرفعال کنند. ( I8187f )

نسخه 1.11

نسخه 1.11.0

1 مه 2024

androidx.webkit:webkit:1.11.0 منتشر شد. نسخه 1.11.0 حاوی این commit ها است.

تغییرات مهم از 1.10.0

  • به برنامه‌ها اجازه دهید پخش صدا را در WebView از طریق APIهای جدید setAudioMuted و isAudioMuted کنترل کنند، که مشابه بی‌صدا کردن یک برگه در Chrome هستند.
  • URLUtilCompat معرفی شد که از تجزیه سرصفحه‌های Content-Disposition که از ویژگی مقدار کدگذاری‌شده filename* همانطور که در RFC 6266 تعریف شده است، پشتیبانی می‌کند. API سازگاری همچنین مستقیماً روشی را برای تجزیه هدر Content-Disposition نشان می دهد که در آن نام فایل پیشنهادی بر اساس URL و نوع MIME مورد نظر نیست.

نسخه 1.11.0-rc01

3 آوریل 2024

androidx.webkit:webkit:1.11.0-rc01 منتشر شد. این نسخه هیچ تغییری نسبت به نسخه 1.11.0-beta01 ندارد.

نسخه 1.11.0-beta01

20 مارس 2024

androidx.webkit:webkit:1.11.0-beta01 بدون هیچ تغییر قابل توجهی منتشر شد. نسخه 1.11.0-beta01 حاوی این تعهدات است.

نسخه 1.11.0-alpha02

21 فوریه 2024

androidx.webkit:webkit:1.11.0-alpha02 منتشر شد. نسخه 1.11.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • روش‌های setAudioMuted و isAudioMuted را برای بی‌صدا کردن (و بی‌صدا کردن) WebViews اضافه کنید. این روش به شما امکان می دهد از پخش صدا توسط WebView جلوگیری کنید. ( Ie7a33 )

تغییرات API

  • URLUtilCompat نهایی شده است زیرا نباید زیرکلاس شود. ( I49ec1 )

نسخه 1.11.0-alpha01

7 فوریه 2024

androidx.webkit:webkit:1.11.0-alpha01 منتشر شد. نسخه 1.11.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • برای URLUtil.guessFileName سازگاری اضافه کنید. نسخه سازگاری در URLUtilCompat از تجزیه سرصفحه‌های Content-Disposition پشتیبانی می‌کند که از ویژگی مقدار کدگذاری‌شده filename* همانطور که در RFC 6266 تعریف شده است، استفاده می‌کند. API سازگاری همچنین مستقیماً روشی را برای تجزیه هدر Content-Disposition نشان می دهد که در آن نام فایل پیشنهادی بر اساس URL و نوع MIME مورد نظر نیست. ( If6ae7 , b/309927164 )

نسخه 1.10

نسخه 1.10.0

24 ژانویه 2024

androidx.webkit:webkit:1.10.0 منتشر شد. نسخه 1.10.0 حاوی این commit ها است.

تغییرات مهم از 1.9.0

  • یک API جدید به WebSettingsCompat اضافه کرد تا با غیرفعال کردن کامل API یا محدود کردن اشتراک‌گذاری هویت برنامه در پاسخ API، رفتار آزمایشی 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 حاوی این commit ها است.

ویژگی های جدید

  • یک API جدید به WebSettingsCompat اضافه کرد تا با غیرفعال کردن کامل API یا محدود کردن اشتراک‌گذاری هویت برنامه در پاسخ API، رفتار آزمایشی Android WebView Media Integrity API را کنترل کند. این را می توان برای همه مبداها و بر اساس مبدا تغییر داد.

نسخه 1.9

نسخه 1.9.0

29 نوامبر 2023

androidx.webkit:webkit:1.9.0 منتشر شد. نسخه 1.9.0 شامل این commit ها است.

تغییرات مهم از 1.8.0

  • یک API چند نمایه جدید برای WebViews اضافه شد.
    • رابط Profile دارای API های مختلفی برای استفاده برای دریافت داده های مرتبط با این نمایه است، مانند نام آن، GeoLocationPermissions ، ServiceWorkerController ، CookieManager و WebStorage . این اشیاء مختص نمایه هستند و اطلاعات بین پروفایل های مختلف در برنامه به اشتراک گذاشته نمی شود.
    • نمایه استفاده شده توسط یک نمونه WebView را می توان با استفاده از روش WebViewCompat#setProfile تغییر داد و با استفاده از WebViewCompat#getProfile بازیابی کرد.
    • ProfileStore به تازگی معرفی شده به شما امکان می دهد پروفایل های موجود در برنامه خود را مدیریت کنید، از جمله نمایه پیش فرض.
    • APIهای WebView موجود مانند CookieManager#getInstance در نمایه پیش فرض به کار خود ادامه خواهند داد.
  • یک API برای تزریق و اجرای جاوا اسکریپت قبل از بارگیری صفحه اضافه شده است.
    • WebViewCompat#addDocumentStartJavascript API به برنامه‌ها اجازه می‌دهد تا اسکریپت‌هایی را به WebView تزریق کنند که تضمین شده است قبل از اجرای هر اسکریپت صفحه اجرا شوند. API به برنامه اجازه می دهد تا لیست هدفی از مبداها را برای فعال کردن اسکریپت مشخص کند و اطمینان حاصل کند که فقط در صفحات مورد نظر اجرا می شود. برخلاف WebView#evaluateJavascript ، این API امکان اجرای اسکریپت‌ها در Iframes تعبیه‌شده را هنگام بارگیری آنها فراهم می‌کند. برنامه‌ها می‌توانند از این API جدید در ترکیب با WebViewCompat#addWebMessageListener برای راه‌اندازی ارتباط دو طرفه با جاوا اسکریپت در صفحه به روشی مطمئن استفاده کنند.
  • APIهایی اضافه شد تا نحوه ثبت رویدادهای گزارش انتساب Privacy Sandbox را تغییر دهد.
    • ما یک API WebSettingsCompat#setAttributionRegistrationBehavior را معرفی کردیم که به توسعه دهندگان اجازه می دهد پیکربندی کنند که آیا منابع و محرک های انتساب به عنوان منبعی از خود برنامه یا از محتوای وب در WebView ثبت می شوند. این روش همچنین می تواند برای غیرفعال کردن Attribution Reporting در WebView استفاده شود. علاوه بر این، برای دریافت رفتار فعلی، یک API WebSettingsCompat#getAttributionRegistrationBehavior اضافه کردیم.
    • برای اطلاعات بیشتر به مستندات جعبه ایمنی حریم خصوصی مراجعه کنید.
  • APIهایی اضافه شد تا ابرداده های عامل کاربر را برای نکات مشتری لغو کند.
    • ما یک API جدید به نام WebSettingsCompat#setUserAgentMetadata را معرفی کردیم تا ابرداده عامل کاربر برای WebView را که برای پر کردن نکات کلاینت عامل کاربر استفاده می‌شود، نادیده بگیرد، و همچنین یک API جدید WebSettingsCompat#getUserAgentMetadata را اضافه کرده‌ایم تا جایگزین‌های فعلی عامل کاربر را دریافت کنیم. ما برنامه‌ها را تشویق می‌کنیم تا هر زمان که برنامه رشته عامل پیش‌فرض کاربر را با استفاده از WebSettings.setUserAgentString تغییر می‌دهد، از API جدید برای تنظیم مقادیر نادیده مناسب استفاده کنند تا اطمینان حاصل شود که مقادیر صحیح در همه موقعیت‌ها استفاده می‌شوند.

نسخه 1.9.0-rc01

15 نوامبر 2023

androidx.webkit:webkit:1.9.0-rc01 منتشر شد. این نسخه هیچ تغییری نسبت به نسخه 1.9.0-beta01 ندارد.

نسخه 1.9.0-beta01

1 نوامبر 2023

androidx.webkit:webkit:1.9.0-beta01 منتشر شد. نسخه 1.9.0-beta01 حاوی این تعهدات است.

تغییرات API

  • مشکل پوچ بودن API ابرداده کاربر-عامل را برطرف کنید. ما کلاس 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 حاوی این commit ها است.

ویژگی های جدید

  • ما API چند نمایه را اضافه کردیم که به شما امکان می دهد جلسات مرور جداگانه بین WebViews داشته باشید، هر نمایه داده های خاص خود را دارد (به عنوان مثال کوکی ها). می‌توانید نمایه‌هایی ایجاد کنید، آنها را به نمونه‌های WebView اختصاص دهید، و بعداً برای دسترسی به داده‌ها، آنها را بازیابی کنید. یک ProfileStore کلاس singleton وجود دارد که به شما کمک می کند پروفایل ها را با ایجاد یا حذف با API ها مدیریت کنید. getOrCreateProfile ، getProfile ، getAllProfileNames و deleteProfile . کلاس Profile دارای API های مختلفی برای دریافت داده های مرتبط با این نمایه مانند نام، GeoLocationPermissions ، ServiceWorkerController ، CookieManager و WebStorage خواهد بود. هر WebView به طور پیش‌فرض با نمایه پیش‌فرض اجرا می‌شود، اما می‌توانید با استفاده از WebViewCompat#setProfile مربوط به آن، نمایه WebView را با استفاده از WebViewCompat#getProfile بازیابی کنید. ( I32d22 )
  • APIهایی را اضافه کنید تا نحوه ثبت رویدادهای Attribution Reporting را تغییر دهید. یک API WebSettingsCompat#setAttributionRegistrationBehavior را معرفی کردیم که به توسعه‌دهندگان اجازه می‌دهد پیکربندی کنند که آیا منابع و محرک‌ها به‌عنوان منبعی از خود برنامه ثبت می‌شوند یا از محتوای وب در WebView . این روش همچنین می تواند برای غیرفعال کردن گزارش انتساب در WebView استفاده شود. علاوه بر این، برای دریافت رفتار فعلی، یک API WebSettingsCompat#getAttributionRegistrationBehavior اضافه کردیم. برای اطلاعات بیشتر به مستندات جعبه ایمنی حریم خصوصی مراجعه کنید. ( I661f2 )
  • API ها را اضافه کنید تا ابرداده های عامل کاربر را لغو کنید. ما یک API WebSettingsCompat#setUserAgentMetadata را برای لغو فراداده عامل کاربر برای WebView، که برای پر کردن نکات مشتری عامل کاربر استفاده می‌شود، معرفی کردیم، و همچنین یک API جدید WebSettingsCompat#getUserAgentMetadata را اضافه کردیم تا جایگزین‌های فعلی عامل کاربر را دریافت کنیم. ما برنامه‌ها را تشویق می‌کنیم تا به جای تکیه بر تغییر عامل کاربر، از API جدید برای تنظیم مقادیر نادیده گرفتن مناسب استفاده کنند. ( I74500 )
  • یک API برای تزریق جاوا اسکریپت اضافه کنید تا در حین بارگذاری صفحه اجرا شود. WebViewCompat.addDocumentStartJavascript API به برنامه‌ها اجازه می‌دهد تا اسکریپت‌ها را به WebView تزریق کنند که قبل از اجرای هر اسکریپت صفحه اجرا می‌شود. API به برنامه اجازه می دهد تا لیست هدفی از مبداها را برای فعال کردن اسکریپت مشخص کند و اطمینان حاصل کند که فقط در صفحات مورد نظر اجرا می شود. برخلاف WebView.evaluateJavascript ، این API امکان اجرای اسکریپت‌ها در Iframes تعبیه‌شده را هنگام بارگیری آنها فراهم می‌کند. ( Ide063 )

نسخه 1.8

نسخه 1.8.0

6 سپتامبر 2023

androidx.webkit:webkit:1.8.0 منتشر شد. نسخه 1.8.0 حاوی این commit ها است.

تغییرات مهم از 1.7.0

نسخه 1.8.0-rc01

9 آگوست 2023

androidx.webkit:webkit:1.8.0-rc01 بدون تغییر از 1.8.0-beta01 منتشر شده است. نسخه 1.8.0-rc01 حاوی این commit ها است.

نسخه 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 حاوی این commit ها است.

تغییرات API

  • بخش مشارکت خارجی را ببینید.

مشارکت خارجی

  • پشتیبانی برای انتقال ArrayBuffer از طریق WebMessagePortCompat#postMessage ، JsReplyProxy#postMessage و WebViewCompat#postWebMessage ، دریافت ArrayBuffer از جاوا اسکریپت از طریق WebMessagePortCompat و WebMessageListener، WebMessageListener ArrayBuffer و از WebMessagePortCompat . لطفاً توجه داشته باشید که این API فقط از نسخه WebView 116 در دسترس خواهد بود. ( Ie7567 ، b/251152171 )

نسخه 1.7

نسخه 1.7.0

24 مه 2023

androidx.webkit:webkit:1.7.0 منتشر شد. نسخه 1.7.0 حاوی این commit ها است.

تغییرات مهم از 1.6.0

  • ما پشتیبانی از کشیدن تصویر را در WebView اضافه کردیم. می توانید با افزودن DropDataContentProvider جدید به مانیفست برنامه خود، همانطور که در مستندات کلاس توضیح داده شده است، به کاربران خود اجازه دهید تصاویر را به خارج از WebView بکشند.
  • ما API ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) را اضافه کردیم که می تواند برای تنظیم دایرکتوری های پایه ای که WebView برای فرآیند فعلی استفاده می کند استفاده شود. مانند همه متدها در ProcessGlobalConfig ، این متد باید قبل از اینکه اولین نمونه از WebView نمونه سازی شود فراخوانی شود. این روش برای ارائه فریمورک اندرویدی به منظور دستکاری تنظیمات WebView اضافه شده است. برای کاربردهای عمومی استفاده از این روش توصیه نمی شود.

نسخه 1.7.0-rc01

10 مه 2023

androidx.webkit:webkit:1.7.0-rc01 بدون تغییر از 1.7.0-beta01 منتشر شده است. نسخه 1.7.0-rc01 حاوی این commit ها است.

نسخه 1.7.0-beta01

5 آوریل 2023

androidx.webkit:webkit:1.7.0-beta01 منتشر شد. نسخه 1.7.0-beta01 حاوی این تعهدات است.

تغییرات API

  • تغییر جزئی در پرچم و نام متد مشخصه و باعث می‌شود که setDirectoryBasePaths() فایل را به جای String بپذیرد ( Ib0d0a )

نسخه 1.7.0-alpha03

8 مارس 2023

androidx.webkit:webkit:1.7.0-alpha03 منتشر شد. نسخه 1.7.0-alpha03 حاوی این commit ها است.

تغییرات API

  • API 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 حاوی این commit ها است.

رفع اشکال

  • اشکالات مستندات برای DropDataContentProvider .

نسخه 1.7.0-alpha01

25 ژانویه 2023

androidx.webkit:webkit:1.7.0-alpha01 منتشر شد. نسخه 1.7.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • ما در حال اضافه کردن پشتیبانی برای کشیدن تصویر در WebView هستیم. می توانید با افزودن DropDataContentProvider جدید به مانیفست برنامه خود، به کاربران خود اجازه دهید تصاویر را به خارج از WebView بکشند. ( 05a1a6 )

نسخه 1.6

نسخه 1.6.1

22 مارس 2023

androidx.webkit:webkit:1.6.1 منتشر شد. نسخه 1.6.1 حاوی این commit ها است.

رفع اشکال

  • رفع خطای تجزیه پروگارد ( Ia65c2 )

نسخه 1.6.0

25 ژانویه 2023

androidx.webkit:webkit:1.6.0 منتشر شد. نسخه 1.6.0 حاوی این commit ها است.

تغییرات مهم از 1.5.0

  • یک API ProcessGlobalConfig جدید اضافه شده است تا به برنامه‌ها اجازه دهد تنظیمات پیکربندی را که باید قبل از بارگیری WebView تنظیم شوند، مانند پسوند فهرست راهنمای داده WebView، ارائه دهند. پیکربندی باید هرچه زودتر در حین راه‌اندازی برنامه تنظیم و اعمال شود تا اطمینان حاصل شود که قبل از اینکه هر رشته دیگری بتواند متدی را که WebView در فرآیند بارگیری می‌کند فراخوانی کند، اتفاق می‌افتد.
  • یک CookieManagerCompat API جدید برای گسترش android.webkit.CookieManager با روش جدید getCookieInfo اضافه شده است، که همه ویژگی‌ها را برای همه کوکی‌های تنظیم شده در یک URL خاص بازیابی می‌کند. این با getCookie API موجود در CookieManager که فقط نام و ویژگی های مقدار کوکی ها را برمی گرداند متفاوت است.
  • WebSettingsCompat روش‌های جدیدی برای فعال/غیرفعال کردن اثر EnterpriseAuthenticationAppLinkPolicy در صورت تنظیم توسط ادمین در WebView و دریافت تنظیمات فعلی دارد. این ویژگی به WebView اجازه می‌دهد به جای باز کردن URL احراز هویت، یک برنامه احراز هویت را باز کند. این ویژگی روی دستگاه‌هایی که توسط خط‌مشی سازمانی مدیریت نمی‌شوند، تأثیری ندارد.
  • افزودن یک API جدید به WebSettingsCompat برای اینکه برنامه‌ها به طور صریح نام بسته برنامه را در هدر X-Requested-With به مبداهای مجاز ارسال کنند. هدر به طور سنتی برای هر درخواستی از WebView ارسال می‌شود.

نسخه 1.6.0-rc01

11 ژانویه 2023

androidx.webkit:webkit:1.6.0-rc01 منتشر شد. نسخه 1.6.0-rc01 حاوی این commit ها است.

رفع اشکال

  • رفع NullPointerException در WebViewFeature.isStartupFeatureSupported(Context, String) هنگام اجرا بر روی SDK < L. ( Ic7292 )

نسخه 1.6.0-beta01

7 دسامبر 2022

androidx.webkit:webkit:1.6.0-beta01 منتشر شد. نسخه 1.6.0-beta01 حاوی این تعهدات است.

تغییرات API

  • ProcessGlobalConfig برای استفاده از یک سازنده معمولی و یک روش اعمال استاتیک تغییر یافته است. متد اعمال فقط باید یک بار در هر فرآیند، در اسرع وقت فراخوانی شود، و اگر بیش از یک بار فراخوانی شود، IllegalStateException پرتاب می کند. اشیاء ProcessGlobalConfig دیگر هیچ محدودیتی برای چند بار فراخوانی تنظیم کننده ها ندارند. ( I456c3 )

نسخه 1.6.0-alpha03

9 نوامبر 2022

androidx.webkit:webkit:1.6.0-alpha03 منتشر شد. نسخه 1.6.0-alpha03 حاوی این commit ها است.

ویژگی های جدید

  • کلاس ProcessGlobalConfig را اضافه کنید که کاربران را قادر می سازد تا تنظیمات سراسری فرآیند را قبل از بارگیری WebView تنظیم کنند. WebView دارای برخی از پارامترهای پیکربندی فرآیند جهانی است که پس از بارگیری WebView قابل تغییر نیستند (مثلاً فهرست راهنمای داده WebView ). این کلاس به برنامه ها اجازه می دهد این پارامترها را تنظیم کنند. پیکربندی باید هرچه زودتر در حین راه‌اندازی برنامه تنظیم و اعمال شود تا اطمینان حاصل شود که قبل از اینکه هر رشته دیگری بتواند متدی را که WebView در فرآیند بارگیری می‌کند فراخوانی کند، اتفاق می‌افتد. ( I7c0e0 , b/250553687 )
  • افزودن API جدید به برنامه‌ها برای ارسال صریح نام بسته برنامه در هدر X-Requested-With به مبداهای مجاز. هدر به طور سنتی برای هر درخواستی از WebView ارسال می‌شود. ( I0adfe , b/226552535 )

تغییرات API

  • WebSettingsCompat#setAlgorithmicDarkeningAllowed API در تمام نسخه‌های اندروید در WebView نسخه 105 و جدیدتر پشتیبانی می‌شود. نسخه‌های قبلی WebView فقط از API در Android Q و جدیدتر پشتیبانی می‌کردند. در نتیجه، این api دیگر @RequiresApi(Build.VERSION_CODES.Q) علامت گذاری نمی شود. ( I3ac1d )

نسخه 1.6.0-alpha02

24 اکتبر 2022

androidx.webkit:webkit:1.6.0-alpha02 منتشر شد. نسخه 1.6.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • یک کلاس CookieManagerCompat جدید به همراه یک API getCookieInfo اضافه می کند که همه ویژگی ها را برای همه کوکی های تنظیم شده در یک URL خاص بازیابی می کند. این با getCookie API موجود در CookieManager که فقط نام و ویژگی های مقدار کوکی ها را برمی گرداند متفاوت است. ( I07365 , b/242161756 )

نسخه 1.6.0-alpha01

24 آگوست 2022

androidx.webkit:webkit:1.6.0-alpha01 منتشر شد. نسخه 1.6.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • APIهایی را در WebSettingsCompat اضافه کرد تا اثر EnterpriseAuthenticationAppLinkPolicy را در صورت تنظیم توسط سرپرست در WebView فعال یا غیرفعال کند. این ویژگی به WebView اجازه می‌دهد به جای باز کردن URL احراز هویت، یک برنامه احراز هویت را باز کند. این ویژگی روی دستگاه‌هایی که توسط خط‌مشی سازمانی مدیریت نمی‌شوند، تأثیری ندارد.

نسخه 1.5.0

نسخه 1.5.0

24 آگوست 2022

androidx.webkit:webkit:1.5.0 منتشر شد. نسخه 1.5.0 حاوی این commit ها است.

تغییرات مهم از 1.4.0

  • یک API جدید setAlgorithmicDarkeningAllowed در WebSettingsCompat جایگزین APIهای setForceDark و setForceDarkStrategy قدیمی می شود. برنامه‌هایی که SDK 33 و بالاتر (T) را هدف قرار می‌دهند باید از API جدید استفاده کنند، زیرا API قدیمی دیگر هیچ تأثیری برای آن برنامه‌ها نخواهد داشت.
  • یک لیست مجاز از URL ها برای استفاده از پراکسی پیکربندی شده اکنون می تواند از طریق ProxyCofig.Builder با تنظیم setReverseBypassEnabled روی true تنظیم شود. هنگامی که این مورد اعمال می شود، همه URL های دیگر از پروکسی پیکربندی شده عبور می کنند.

نسخه 1.5.0-rc01

10 آگوست 2022

androidx.webkit:webkit:1.5.0-rc01 بدون تغییر از 1.5.0-beta01 منتشر شده است. نسخه 1.5.0-rc01 حاوی این commit ها است.

نسخه 1.5.0-beta01

29 ژوئن 2022

androidx.webkit:webkit:1.5.0-beta01 منتشر شد. نسخه 1.5.0-beta01 حاوی این تعهدات است.

تغییرات API

  • Alogrithic Darkening مربوط به API اکنون حاشیه‌نویسی شده است تا به سطح API Q نیاز داشته باشد. API هیچ تأثیری بر سطوح API < Q نخواهد داشت، زیرا تم تیره در این دستگاه‌ها گزینه‌ای نیست. ( I0905e )

نسخه 1.5.0-alpha01

18 مه 2022

androidx.webkit:webkit:1.5.0-alpha01 منتشر شد. نسخه 1.5.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • برای دریافت مقدار هدر X-Client-Data ارسال شده توسط WebView ، یک متد getVariationsHeader() جدید در WebViewCompat اضافه کنید. مقدار بازگشتی یک پروتوباف ClientVariations کدگذاری شده در base64 خواهد بود.
  • APIها را در WebSettingsCompat اضافه کنید تا تاریکی الگوریتمی برای برنامه با targetSdk >= 33 مجاز/مجاز باشد. ( I29597 )

تغییرات API

  • یک روش جدید در ProxyCofig.Builder برای تنظیم بای پس معکوس اضافه کنید. تنظیم دور زدن معکوس بر روی true به این معنی است که فقط URL های موجود در لیست دور زدن از تنظیمات پراکسی استفاده می کنند. ( 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 حاوی این commit ها است.

تغییرات عمده از 1.3.0

  • یک API setSafeBrowsingAllowlist() جدید برای جایگزینی setSafeBrowsingWhitelist() اضافه کرد. این به برنامه‌ها کمک می‌کند تا کد خود را به‌روزرسانی کنند تا از اصطلاحات غیرشامل اجتناب کنند، در حالی که همچنان از همان محدوده Android SDK و نسخه‌های WebView مانند API منسوخ پشتیبانی می‌کنند.
  • یک اشکال در setProxyOverride که باعث می شد قوانین بازگشتی به درستی اعمال نشود، رفع شد.

نسخه 1.4.0-rc02

2 دسامبر 2020

androidx.webkit:webkit:1.4.0-rc02 منتشر شد. نسخه 1.4.0-rc02 حاوی این commit ها است.

رفع اشکال

  • رفع عدم اعمال صحیح قوانین بازگشتی هنگام استفاده از setProxyOverride.

نسخه 1.4.0-rc01

11 نوامبر 2020

androidx.webkit:webkit:1.4.0-rc01 بدون تغییر از 1.4.0-beta01 منتشر شده است. نسخه 1.4.0-rc01 حاوی این commit ها است.

نسخه 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 حاوی این commit ها است.

تغییرات API

  • یک API WebViewCompat#setSafeBrowsingAllowlist() اضافه کرد تا جایگزین setSafeBrowsingWhitelist() شود. این به برنامه‌ها کمک می‌کند تا کد خود را به‌روزرسانی کنند تا از اصطلاحات غیرشامل اجتناب کنند، در حالی که همچنان از همان محدوده Android SDK و نسخه‌های WebView مانند API منسوخ پشتیبانی می‌کنند. ( I8d65d )

نسخه 1.3.0

نسخه 1.3.0

19 آگوست 2020

androidx.webkit:webkit:1.3.0 منتشر شد. نسخه 1.3.0 حاوی این commit ها است.

تغییرات عمده از 1.2.0

  • ForceDarkStrategy API کنترل بیشتری برای تاریک شدن WebView (تاریک شدن محتوای CSS/وب در مقابل تاریک شدن خودکار) فراهم می کند.
  • WebMessageListener و APIهای مرتبط با آن مکانیسم ساده و ایمنی را برای برقراری ارتباط بین محتوای وب و برنامه WebView embedder فراهم می‌کنند.
  • isMultiProcessEnabled API برای بررسی اینکه آیا WebView در چند فرآیند اجرا می شود یا خیر. این کار با شروع در Android O امکان پذیر است و به این معنی است که محتوای وب در یک فرآیند رندر جعبه ایمنی جدا از فرآیند برنامه ارائه می شود. این رندر جعبه ایمنی ممکن است با سایر WebViewها در همان برنامه به اشتراک گذاشته شود، اما با سایر فرآیندهای برنامه به اشتراک گذاشته نشده است.

نسخه 1.3.0-rc02

5 آگوست 2020

androidx.webkit:webkit:1.3.0-rc02 منتشر شد. نسخه 1.3.0-rc02 حاوی این commit ها است.

رفع اشکال

  • این مشکل سازگاری را برطرف می کند که در آن WebMessageListener گاهی اوقات در حین توسعه محلی خراب می شود اگر برنامه شما با اجرای فوری Android Studio شروع شود.

نسخه 1.3.0-rc01

24 ژوئن 2020

androidx.webkit:webkit:1.3.0-rc01 بدون تغییر از 1.3.0-beta01 منتشر شده است. نسخه 1.3.0-rc01 حاوی این commit ها است.

نسخه 1.3.0-beta01

10 ژوئن 2020

androidx.webkit:webkit:1.3.0-beta01 منتشر شد. نسخه 1.3.0-beta01 حاوی این تعهدات است.

ویژگی های جدید

  • ForceDarkStrategy API برای کنترل تاریک شدن WebView (تاریک شدن محتوای CSS/وب در مقابل تاریک شدن خودکار).
  • APIهای WebMessageListener یک مکانیسم ساده و امن برای برقراری ارتباط بین محتویات وب و برنامه تعبیه‌کننده WebView فراهم می‌کنند.
  • MultiProcessEnabled API برای بررسی اینکه آیا WebView در حالت چند فرآیندی اجرا می شود یا خیر.

نسخه 1.3.0-alpha03

27 مه 2020

androidx.webkit:webkit:1.3.0-alpha03 منتشر شد. نسخه 1.3.0-alpha03 حاوی این commit ها است.

تغییرات API

  • متد addWebMessageListener اکنون یک Set<String> از قوانین مبدا مجاز (که قبلاً یک List<String> ) دریافت می کند.

نسخه 1.3.0-alpha02

29 آوریل 2020

androidx.webkit:webkit:1.3.0-alpha02 منتشر شد. نسخه 1.3.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • MultiProcessEnabled API برای بررسی اینکه آیا WebView در حالت چند فرآیندی اجرا می شود یا خیر.

تغییرات API

  • همه ثابت های استراتژی تاریک اکنون با DARK_STRATEGY پیشوند شده اند.

نسخه 1.3.0-alpha01

15 آوریل 2020

androidx.webkit:webkit:1.3.0-alpha01 منتشر شد. نسخه 1.3.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • ForceDarkStrategy API برای کنترل تاریک شدن WebView (تاریک شدن محتوای CSS/وب در مقابل تاریک شدن خودکار).
  • APIهای WebMessageListener یک مکانیسم ساده و ایمن برای برقراری ارتباط بین محتوای وب و برنامه تعبیه‌کننده WebView ارائه می‌کنند.

نسخه 1.2.0

نسخه 1.2.0

4 مارس 2020

androidx.webkit:webkit:1.2.0 منتشر شد. نسخه 1.2.0 حاوی این commit ها است.

تغییرات عمده از 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 حاوی این commit ها است.

نسخه 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

  • APIهای دریافت کننده برای تکمیل ()setWebViewClient و ()setWebChromeClient .
  • ProxyController API برای تنظیم یک پروکسی درخواست شبکه برای WebViews یک برنامه.
  • WebViewAssetLoader API برای ساده‌سازی بارگیری دارایی‌ها، منابع و فایل‌های APK از فهرست داده‌های برنامه از طریق رهگیری درخواست. این امکان دسترسی به وب و منابع محلی را بدون غیرفعال کردن CORS فراهم می کند.
  • TracingController API برای جمع آوری اطلاعات ردیابی WebView برای اهداف اشکال زدایی.
  • APIهای RenderProcess برای مدیریت سرویس‌های ارائه‌دهنده WebView و تشخیص اینکه چه زمانی محتوای بد رفتار باعث می‌شود رندرهای WebView پاسخگو نباشند.
  • APIهای موجود را به‌روزرسانی کرد تا حاشیه‌نویسی‌های پوچ‌پذیری ( @NonNull ، @Nullable ) و رشته ( @UiThread ، @WorkerThread ) را شامل شود.

نسخه 1.1.0-rc01

9 اکتبر 2019

androidx.webkit:webkit:1.1.0-rc01 منتشر شد. نسخه 1.1.0-rc01 حاوی این commit ها است .

رفع اشکال

  • مشکلی را که در آن setWebViewRenderProcessClient() در صورت ارسال یک کلاینت تهی ممکن است از کار بیفتد، برطرف شد.

نسخه 1.1.0-beta01

5 سپتامبر 2019

androidx.webkit:webkit:1.1.0-beta01 منتشر شد. commit های موجود در این نسخه را می توانید در اینجا بیابید.

ویژگی های جدید

  • InternalStoragePathHandler جدید در WebViewAssetLoader برای بارگیری فایل ها از فهرست داده های برنامه.

API تغییر می کند

  • ProxyConfig#getProxyRules() اکنون یک لیست غیرقابل تغییر از نمونه های ProxyRule را برمی گرداند، که کلاس جدیدی برای نگه داشتن فیلتر طرح و URL پروکسی مربوطه آن است.

رفع اشکال

  • WebViewAssetLoader زمانی که نمی تواند نوع MIME را از مسیر فایل حدس بزند، نوع MIME "متن/ساده" (به جای خالی) را به طور پیش فرض انتخاب می کند.
  • WebViewAssetLoader دیگر هنگام بارگذاری فایل‌ها با کاراکترهای خاص در نام مسیر، NullPointerException وارد نمی‌کند.

نسخه 1.1.0-alpha02

7 آگوست 2019

androidx.webkit:webkit:1.1.0-alpha02 منتشر شد. commit های موجود در این نسخه را می توانید در اینجا بیابید.

ویژگی های جدید

  • WebViewAssetLoader رابط PathHandler را نشان می دهد تا به برنامه ها اجازه دهد تا عملکرد سفارشی مدیریت مسیر را ایجاد کنند.

API تغییر می کند

  • WebViewAssetLoader اکنون یک کلاس نهایی است، زیرا قرار نیست زیر کلاسه شود.
  • اجرای WebViewAssetLoader#PathHandler اکنون عمومی و نهایی است.
  • تغییرات جزئی در نام روش های ProxyConfig.
  • ProxyController : متدهای جدید addDirect() و addDirect(String) را برای اتصال مستقیم به سرورها اضافه کرد. رشته DIRECT حذف شد.
  • APIهای موجود را به‌روزرسانی کرد تا حاشیه‌نویسی‌های پوچ‌پذیری ( @NonNull ، @Nullable ) و رشته ( @UiThread ، @WorkerThread ) را شامل شود.

نسخه 1.1.0-alpha01

7 مه 2019

androidx.webkit:webkit:1.1.0-alpha01 منتشر شد. commit های موجود در این نسخه را می توانید در اینجا بیابید.

ویژگی های جدید

  • APIهای دریافت کننده برای تکمیل setWebViewClient() و setWebChromeClient()
  • ProxyController API برای تنظیم یک پروکسی درخواست شبکه برای WebViews یک برنامه.
  • AssetLoader API برای ساده‌سازی بارگیری دارایی‌ها و منابع APK از طریق رهگیری درخواست و امکان دسترسی به منابع وب بدون غیرفعال کردن CORS.
  • TracingController API برای جمع آوری اطلاعات ردیابی WebView برای اهداف اشکال زدایی.
  • APIهای RenderProcess برای مدیریت سرویس‌های ارائه‌دهنده WebView و تشخیص اینکه چه زمانی محتوای بد رفتار باعث می‌شود رندرهای WebView پاسخگو نباشند.

رفع اشکال

  • اصلاحات جزئی در قالب‌بندی اسناد برای APIهای موجود.