در برنامه های افزودنی کروم چه اتفاقی می افتد؟

در ماه ژوئیه، ما یک سری وبلاگ جدید راه اندازی کردیم تا شما را در مورد پیشرفت های برنامه افزودنی به روز نگه داریم. به لطف بازخورد ارزشمند شما و همکاری مداوم ما با سایر فروشندگان مرورگر در گروه انجمن WebExtensions، ما همچنان به بهبود APIهای برنامه افزودنی ادامه می دهیم و در جهت سازگاری بیشتر در بین مرورگرها کار می کنیم.

به نسخه اکتبر خوش آمدید! در این پست، به برخی از تغییراتی که تیم افزونه کروم در چند ماه گذشته ایجاد کرده است و همچنین برخی از ویژگی‌های جدیدی که اواخر امسال ارائه می‌شوند، نگاهی خواهیم انداخت. بیا شروع کنیم!

API های افزونه و ویژگی های جدید

در این بخش، چند راه‌اندازی مهم API را به اشتراک می‌گذاریم، به طور خلاصه سایر بهبودهای API را مرور می‌کنیم و نسخه‌های آینده را به اشتراک می‌گذاریم. همه راه‌اندازی‌ها در حال حاضر در آخرین نسخه بتا در دسترس هستند. برای جزئیات، برنامه زمان‌بندی انتشار کروم را ببینید.

نکات برجسته

مسائل شناخته شده را حل کرد

تیم برنامه افزودنی فعالانه برای حل مشکلات پایداری Manifest V3 کار کرده است. Chrome 116 پیشرفت‌های زیادی را ارائه کرد که به ما کمک کرد پیشرفت قابل‌توجهی در جهت کاهش شکاف ویژگی‌ها بین Manifest V2 و V3 داشته باشیم. در Chrome 120، رسیدگی به تمام شکاف‌های پلتفرم اولویت‌بندی شده خود را به پایان رسانده‌ایم و همه اشکالات مهمی را که در صفحه مشکلات شناخته شده مستند شده‌اند، می‌بندیم. همه ویژگی‌ها در حال حاضر در Chrome 120 Canary در دسترس هستند، به‌جز پشتیبانی از fileHandler برای ChromeOS Lacros و userScripts API که در اواخر این ماه ارائه می‌شود. برای جزئیات بیشتر ، صفحه مشکلات شناخته شده به روز شده را بررسی کنید.

بهبود ثبات کارکنان خدمات

مشکلات پایداری مربوط به کارکنان خدمات حل شده است. در Chrome 116، نگه‌داشتن زنده‌های قوی را به APIهای برنامه‌های افزودنی اضافه کردیم که درخواست کاربر را نشان می‌دهند و پشتیبانی بهتری از WebSockets را نشان می‌دهند (به آموزش استفاده از WebSockets در برنامه‌های افزودنی مراجعه کنید). از Chrome 118 به بعد، یک سرویس‌دهنده در طول یک جلسه API فعال Debugger زنده می‌ماند.

برای جزئیات بیشتر ، راهنمای به‌روزرسانی‌شده سرویس‌کار ما را بررسی کنید. اگر کاربران شما همچنان با مشکلات پایداری مربوط به سرویس‌دهنده در نسخه‌های Chrome بعد از 119 مواجه هستند، لطفاً به ما اطلاع دهید .

افزایش امنیت

قبلاً، پیمایش به برخی از نشانی‌های وب chrome:// با استفاده از tabs.update() , tabs.create و windows.create() خطایی ایجاد می‌کرد یا کروم را خراب می‌کرد. همچنین، tabs.update() نتوانست URL جاوا اسکریپت را باز کند. در Chrome 117، تعداد URL های پشتیبانی شده chrome:// را افزایش دادیم، و مسدود کردن URL جاوا اسکریپت اکنون برای همه روش های API برنامه افزودنی نیز اعمال می شود.

در Chrome 117، اگر افزونه‌ای که نصب کرده‌اند دیگر در فروشگاه وب Chrome موجود نباشد، کاربران اعلان‌های فعالانه را در صفحه برنامه‌های افزودنی Chrome دریافت خواهند کرد. اگر توسعه‌دهنده افزونه را لغو انتشار کند، به دلیل نقض خط‌مشی حذف شود یا به عنوان بدافزار شناسایی شود، ممکن است این اتفاق بیفتد. برای غواصی عمیق، وارد کردن بررسی ایمنی به صفحه chrome://extensions را ببینید.

در Chrome 118، برنامه‌های افزودنی مجاز به پیمایش به آدرس‌های file:// با استفاده از chrome.tabs و chrome.windows API‌ها نیستند، مگر اینکه گزینه «اجازه دسترسی به آدرس‌های اینترنتی فایل» در صفحه جزئیات برنامه افزودنی فعال باشد. بحث WECG را ببینید.

راه اندازی API بیشتر

  • Runtime API: با شروع در Chrome 116، می‌توانید از runtime.getContexts() برای بازیابی اطلاعات مربوط به زمینه‌های فعال استفاده کنید. برای مثال، می‌توانید بررسی کنید که آیا سند خارج از صفحه فعال وجود دارد یا خیر.
  • Side Panel API در Chrome 116 می‌توانید از sidepanel.open() برای باز کردن پانل کناری افزونه به صورت برنامه‌ریزی در پاسخ به حرکت کاربر، مانند کلیک کردن روی منوی زمینه، استفاده کنید.
  • TabCapture API توانایی فراخوانی getMediaStreamId() را از کارگر سرویس برنامه افزودنی و دریافت یک شی MediaStream از شناسه جریان در یک سند خارج از صفحه در Chrome 116 اضافه کرد. برای مثال به ضبط صدا و ضبط صفحه مراجعه کنید.
  • DeclarativeNetRequest API: مقدار پیش‌فرض ویژگی isUrlFilterCaseSensitive در Chrome 118 به false تغییر یافت.

به زودی...

ما قصد داریم با انتشار Chrome 120 به همه موارد باقی مانده در صفحه مشکلات شناخته شده رسیدگی کنیم. علاوه بر این، ما قصد داریم ویژگی های زیر را اضافه کنیم:

  • UserScripts API به مدیران اسکریپت کاربر اجازه می دهد تا نحوه و زمان تزریق مجموعه ای از اسکریپت های کاربر را به صفحات وب هماهنگ کنند. برای جزئیات به پیشنهاد WECG مراجعه کنید.
  • ReadingList API به توسعه دهندگان این امکان را می دهد که ابرداده های واقع در پانل Reading List پانل کناری را ایجاد، خواندن، به روز رسانی و حذف کنند. برای اطلاعیه موارد جدید در افزونه های Chrome را تماشا کنید.
  • به دنبال بازخورد در گروه انجمن برنامه‌های افزودنی وب، به طور قابل توجهی محدودیت قوانین ثابت فعال را از 10 به 50 افزایش می‌دهیم. علاوه بر این، ما تعداد کل قوانین استاتیک مجاز را از 50 به 100 افزایش می دهیم. این در حال حاضر در قناری موجود است.
  • File Handling API: برای برنامه‌های افزودنی ChromeOS که از ChromeOS 120 شروع می‌شود، در دسترس خواهد بود، که به برنامه‌های افزودنی اجازه می‌دهد فایل‌ها را با انواع MIME مشخص شده و پسوند فایل‌ها به روشی مشابه با مدیریت فایل‌های پلتفرم وب باز کنند.
  • برنامه‌های افزودنی می‌توانند از web Push API از طریق self.registration.pushManager.subscribe() بدون نمایش اعلان قابل مشاهده توسط کاربر با تنظیم userVisibleOnly روی false استفاده کنند. این امر باعث می‌شود اعلان‌های فشاری جایگزین بی‌نظیری برای WebSockets در سرویس‌کاران (MV3) برای ارتباط ناهمزمان مشتری-سرور شود. برای جزئیات، به بحث Chromium اشکال و WECG مراجعه کنید.

به محض اینکه این ویژگی‌ها در Chrome Beta در دسترس قرار گرفت، منتظر اطلاعیه‌های جدید در افزونه‌ها باشید.

ارتقای اسناد

ما همچنین در حال بهبود و اضافه کردن اسناد خود بوده ایم. لطفاً به پرسیدن سؤالات درباره گروه chromium ادامه دهید و مشکلات اسناد را گزارش کنید .

نکات برجسته

به روز رسانی های بیشتر

به زودی...

  • مرجع و آموزش User Scripts API.
  • آموزش Firebase و نمونه.
  • مرجع ReadingList API.

طراحی مجدد فروشگاه وب Chrome 🌈

نماگرفت صفحه اصلی فروشگاه وب Chrome. .
صفحه اصلی فروشگاه وب Chrome جدید

در اوایل این ماه، همانطور که به Google I/O اشاره کردیم، پیش‌نمایش اولیه فروشگاه وب کروم بازسازی‌شده را اعلام کردیم. خودتان آن را بررسی کنید! https://chromewebstore.google.com/ . چند تغییر قابل توجه عبارتند از:

  • فهرست دسته‌بندی‌ها را از فهرست یازده تایی به فهرست جدید هفده تایی در سه گروه افزایش داد.
  • تکمیل خودکار در جستجو بهبود یافته است.
  • اکنون اسکرین شات ها با کیفیت بسیار بالاتری نمایش داده می شوند. اگر قبلاً این کار را نکرده‌اید، می‌توانید اسکرین‌شات‌های 1280x800 را آپلود کنید.
  • پاسخ به سوالات در برگه پشتیبانی اکنون خطوط جدید را نشان می دهد.
  • هنگام پاسخ به نظرات کاربران و سؤالات پشتیبانی، پاسخ شما اکنون شامل نشان «توسعه‌دهنده» در کنار نام شما خواهد بود.
  • می‌توانید با افزودن «/reviews» در انتهای نشانی اینترنتی مورد فروشگاه خود، پیوند مستقیمی به صفحه نظرات در اختیار کاربران قرار دهید، برای مثال: https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews .

از نظر همه افراد تا کنون در گروه chromium-google متشکریم. به راحتی به بحث بپیوندید یا بازخورد خود را مستقیماً با استفاده از آیتم منوی بازخورد دادن به تیم CWS ارسال کنید:

در صفحه فروشگاه وب Chrome بازخورد بدهید
ارائه بازخورد در صفحه فروشگاه وب Chrome

علاوه بر این، می‌توانید یک فرم خود نامزدی ارسال کنید تا در مجموعه انتخاب‌های ویرایشگران نمایش داده شود. منتظر بهبودهایی باشید که به زودی در داشبورد توسعه‌دهندگان نیز ارائه می‌شوند!

💡 آیا می دانستید؟

  • یک ویدیوی جدید در مورد اشکال زدایی افزونه های کروم وجود دارد. موضوعات بسیاری را پوشش می دهد که ممکن است قبلاً با آنها آشنا باشید، اما همچنین چند ترفند ساده برای استفاده از DevTools در برنامه های افزودنی به اشتراک می گذارد.
  • اکنون باید برای هر برنامه افزودنی یک خط مشی رازداری ارائه دهید. قبلاً فقط می‌توانستید یک خط‌مشی حفظ حریم خصوصی به ازای هر حساب توسعه‌دهنده اضافه کنید، اما اگر چند برنامه افزودنی زیر یک حساب توسعه‌دهنده داشته باشید، کار سختی بود. این رابط جدید در برگه حریم خصوصی مورد شما در داشبورد برنامه‌نویس موجود است. این بدان معنی است که سیاست های حفظ حریم خصوصی در سطح حساب دیگر پشتیبانی نمی شود.
    اسکرین شات جعبه سیاست حفظ حریم خصوصی
    اسکرین شات جعبه سیاست حفظ حریم خصوصی

دست دراز کردن 🙌

ما به ارتباط با جامعه توسعه دهندگان برنامه های افزودنی از طریق 1:1، راه اندازی برنامه های جدید و شرکت در نشست ها ادامه داده ایم. در اینجا چند نکته برجسته وجود دارد:

  • برنامه افزودنی Google Developer Experts در ماه اوت راه اندازی شد. ما بیش از دوجین GDE جدید متمرکز بر افزونه کروم از سرتاسر جهان داریم که بازخورد عالی را به ما ارائه می دهند. این یک زمان بسیار هیجان انگیز برای برنامه است!
  • ما در TPAC (کنفرانس سالانه W3C) به عنوان بخشی از گروه جامعه برنامه‌های افزودنی وب شرکت کردیم و با نمایندگان فایرفاکس و سافاری به همراه تعدادی از اعضای انجمن ملاقات کردیم. ما در چندین موضوع پیشرفت قابل توجهی داشتیم، از جمله حرکت به سمت APIهای برنامه افزودنی سازگارتر، کار بر روی یک مشخصات، و ساختن بر روی تست‌های پلتفرم وب برای ایجاد یک مجموعه آزمایشی جدید. دقیقه کامل را در مخزن WECG بخوانید.
  • هفته گذشته، تیم توسعه در اجلاس Ad-Filtering Dev Summit در آمستردام شرکت کرد. آن‌ها با چند نفر از شما در یک قهوه‌چتی که قبل از هفته اجلاس سران و ساعات کاری باز جمعه برگزار می‌کردند ملاقات کردند.
    تیم توسعه دهنده در Ad-filtering Dev Summit
    تیم توسعه دهنده در Ad-filtering Dev Summit

حتی اگر نتوانستید در هیچ یک از این رویدادها شرکت کنید، می‌توانید با پرسیدن سؤالات در مورد گروه Google -extensions کروم ، دنبال کردن بحث‌های شریک مرورگر در مورد WECG و گزارش هرگونه مشکل مستندات، به مشارکت خود ادامه دهید.

باز هم از اینکه بخشی از انجمن توسعه دهندگان برنامه های افزودنی هستید سپاسگزاریم!