پس از خواندن بخش شروع ، از این راهنما به عنوان طرح کلی اجزای برنامه افزودنی، قابلیت های آنها و نحوه ترکیب آنها استفاده کنید. ابتدا با آنچه افزونه ها قادر به انجام آن هستند آشنا شوید: سپس یاد بگیرید که چگونه این ویژگی ها را با استفاده از بخش مفاهیم هسته برنامه افزودنی ترکیب کنید.

رابط کاربری را طراحی کنید

بیشتر برنامه‌های افزودنی برای کار کردن به نوعی تعامل کاربر نیاز دارند. پلتفرم برنامه‌های افزودنی راه‌های مختلفی برای افزودن تعاملات به برنامه افزودنی شما ارائه می‌کند. این روش‌ها شامل پنجره‌های بازشو از نوار ابزار کروم، پانل‌های کناری، منوهای زمینه و موارد دیگر است. اکثر برنامه‌های افزودنی برای کار کردن به نوعی تعامل با کاربر نیاز دارند. پلتفرم برنامه‌های افزودنی راه‌های مختلفی برای افزودن تعاملات به برنامه افزودنی شما ارائه می‌کند. این روش‌ها شامل پنجره‌های بازشو از نوار ابزار کروم، پانل‌های کناری، منوهای زمینه و موارد دیگر است.
از API browser.sidePanel برای میزبانی محتوا در پنل کناری مرورگر در کنار محتوای اصلی یک صفحه وب استفاده کنید. از API browser.sidePanel برای میزبانی محتوا در پنل کناری مرورگر در کنار محتوای اصلی یک صفحه وب استفاده کنید.
نمایش نماد یک برنامه افزودنی را در نوار ابزار کنترل کنید.
موارد را به منوی زمینه Google Chrome اضافه کنید.

مرورگر را کنترل کنید

APIهای افزونه کروم این امکان را به شما می دهد تا نحوه کار مرورگر خود را تغییر دهید.
لغو تنظیمات راهی برای برنامه‌های افزودنی برای لغو تنظیمات انتخابی Chrome است. علاوه بر این، برنامه‌های افزودنی می‌توانند از صفحات لغو HTML برای جایگزینی صفحه‌ای که Google Chrome معمولاً ارائه می‌کند، استفاده کنند. یک برنامه افزودنی می تواند مدیر نشانک، برگه تاریخچه یا برگه جدید را لغو کند.
افزونه‌های DevTools با دسترسی به APIهای افزونه مخصوص DevTools از طریق یک صفحه DevTools که به افزونه اضافه شده است ، قابلیت‌هایی را به DevTools کروم اضافه می‌کنند . همچنین می‌توانید از API browser.debugger برای فراخوانی پروتکل اشکال‌زدایی از راه دور کروم استفاده کنید. برای سنجش تعامل شبکه، اشکال‌زدایی جاوا اسکریپت، تغییر DOM و موارد دیگر، به یک یا چند تب متصل شوید. افزونه‌های DevTools با دسترسی به APIهای افزونه مخصوص DevTools از طریق یک صفحه DevTools که به افزونه اضافه شده است، قابلیت‌هایی را به DevTools کروم اضافه می‌کنند . همچنین می‌توانید از API browser.debugger برای فراخوانی پروتکل اشکال‌زدایی از راه دور کروم استفاده کنید. برای سنجش تعامل شبکه، اشکال‌زدایی جاوا اسکریپت، تغییر DOM و موارد دیگر، به یک یا چند تب متصل شوید.
API browser.notifications browser.notifications به شما امکان می‌دهد با استفاده از قالب‌ها، اعلان‌هایی ایجاد کنید و این اعلان‌ها را در سینی سیستم کاربر به کاربران نشان دهید.
از API browser.history برای تعامل با سابقه صفحات بازدید شده مرورگر و از API browser.browsingData برای مدیریت سایر داده‌های مرور استفاده کنید. browser.topSites برای دسترسی به سایت‌های پربازدید استفاده کنید. از API browser.history برای تعامل با سابقه صفحات بازدید شده مرورگر و از API browser.browsingData برای مدیریت سایر داده‌های مرور استفاده کنید. browser.topSites برای دسترسی به سایت‌های پربازدید استفاده کنید.
از browser.tabGroups browser.tabs مانند browser.tabs ، browser.tabGroups و browser.windows برای ایجاد browser.windows تغییر و مرتب‌سازی مرورگر کاربر استفاده کنید.
از API browser.commands برای اضافه کردن میانبرهای صفحه‌کلید که باعث ایجاد اقداماتی در افزونه شما browser.commands ، استفاده کنید. به عنوان مثال، می‌توانید یک میانبر برای باز کردن اکشن مرورگر یا ارسال یک دستور به افزونه اضافه کنید.
از API browser.identity برای دریافت توکن‌های دسترسی OAuth 2.0 استفاده کنید. ,از API browser.identity برای دریافت توکن‌های دسترسی OAuth 2.0 استفاده کنید.
API browser.management browser.management API) روش‌هایی برای مدیریت فهرست افزونه‌های نصب‌شده و در حال اجرا ارائه می‌دهد. این API به‌ویژه برای افزونه‌هایی که صفحه تب جدید (New Tab) داخلی را نادیده می‌گیرند، مفید است.
API browser.omnibox به شما امکان می‌دهد یک کلمه کلیدی را در omnibox (نوار آدرس) گوگل کروم ثبت کنید. ,API مربوط به browser.omnibox به شما امکان می‌دهد یک کلمه کلیدی را در omnibox (نوار آدرس) گوگل کروم ثبت کنید.
از API browser.privacy برای کنترل استفاده از ویژگی‌هایی در کروم که می‌توانند بر حریم خصوصی کاربر تأثیر بگذارند، استفاده کنید. همچنین برای مدیریت تنظیمات پروکسی کروم به API مربوط به browser.proxy مراجعه کنید. ,از API browser.privacy برای کنترل استفاده از ویژگی‌هایی در کروم که می‌توانند بر حریم خصوصی کاربر تأثیر بگذارند، استفاده کنید. همچنین برای مدیریت تنظیمات پروکسی کروم به API مربوط به browser.proxy مراجعه کنید.
از API browser.downloads برای شروع، نظارت، دستکاری و جستجوی دانلودها به صورت برنامه‌نویسی browser.downloads استفاده کنید.
از API browser.bookmarks و API browser.bookmarks browser.readingList browser.readingList برای ایجاد، سازماندهی و دستکاری این لیست‌ها استفاده کنید.

وب را کنترل کنید

به صورت پویا محتوا و رفتار صفحات وب را تغییر دهید. می‌توانید با تزریق اسکریپت‌ها، رهگیری درخواست‌های شبکه و استفاده از APIهای وب برای تعامل با صفحات وب، وب را کنترل و اصلاح کنید.
اسکریپت های محتوا فایل هایی هستند که در متن صفحات وب اجرا می شوند. آنها از مدل استاندارد شیء سند (DOM) برای خواندن جزئیات صفحات وب که مرورگر بازدید می کند، ایجاد تغییرات در آنها و ارسال اطلاعات به پسوند والد خود استفاده می کنند. ، اسکریپت های محتوا فایل هایی هستند که در زمینه صفحات وب اجرا می شوند. آنها از مدل استاندارد شیء سند (DOM) برای خواندن جزئیات صفحات وب که مرورگر بازدید می کند، ایجاد تغییرات در آنها و ارسال اطلاعات به پسوند والد خود استفاده می کنند.
مجوز "activeTab" زمانی که کاربر برنامه افزودنی را فراخوانی می کند، به عنوان مثال با کلیک بر روی عملکرد آن، به یک برنامه افزودنی دسترسی موقت به برگه فعال فعلی می دهد. دسترسی به برگه تا زمانی که کاربر در آن صفحه است ادامه می‌یابد و زمانی که کاربر برگه را دور می‌زند یا می‌بندد لغو می‌شود.
از API browser.webNavigation browser.declarativeNetRequest ، browser.webRequest و browser.webNavigation برای browser.declarativeNetRequest ، مسدود کردن و تغییر browser.webRequest شبکه استفاده کنید.
با رویکردهای مختلف برای ضبط صدا و تصویر از یک تب، پنجره یا صفحه نمایش با استفاده از APIهای پلتفرم وب مانند browser.tabCapture یا getDisplayMedia() آشنا شوید. با رویکردهای مختلف برای ضبط صدا و تصویر از یک تب، پنجره یا صفحه نمایش با استفاده از APIهای پلتفرم وب مانند browser.tabCapture یا getDisplayMedia() آشنا شوید.
از API browser.contentSettings برای کنترل اینکه آیا وب‌سایت‌ها می‌توانند از ویژگی‌هایی مانند کوکی‌ها، browser.contentSettings اسکریپت و افزونه‌ها استفاده کنند یا خیر، استفاده کنید. به طور کلی‌تر، تنظیمات محتوا به شما این امکان را می‌دهد که رفتار کروم را به جای سراسری، بر اساس هر سایت سفارشی کنید.

مفاهیم اصلی

با استفاده از پلتفرم وب و APIهای برنامه افزودنی می‌توانید ویژگی‌های پیچیده‌تری را با ترکیب اجزای مختلف UI و ویژگی‌های پلتفرم افزونه ایجاد کنید.
کارمند سرویس توسعه (service-worker.js) یک اسکریپت مبتنی بر رویداد است که مرورگر در پس‌زمینه اجرا می‌شود. اغلب برای پردازش داده ها، هماهنگ کردن وظایف در بخش های مختلف یک برنامه افزودنی و به عنوان مدیر رویداد یک برنامه افزودنی استفاده می شود.
مجوزها را بدانید: چگونه کار می کنند و چه زمانی از درخواست آنها در مواقعی که نیازی به آنها نیست اجتناب کنید.
روش های مختلفی برای پیاده سازی محتوا و فیلتر شبکه در برنامه های افزودنی کروم وجود دارد. درباره قابلیت‌های فیلتر کردن محتوا در دسترس برنامه‌های افزودنی و روش‌ها، تکنیک‌ها و API‌های مختلف فیلتر که می‌تواند توسط برنامه‌های افزودنی Chrome استفاده شود، بیاموزید.
بسیاری از مواقع اسکریپت های محتوا یا سایر صفحات افزونه نیاز به ارسال یا دریافت اطلاعات از کارمند خدمات افزونه دارند. در این موارد، هر طرف می‌تواند پیام‌های ارسال شده از طرف دیگر را گوش کند و در همان کانال پاسخ دهد.
برنامه های افزودنی خود را برای تبادل پیام با برنامه های بومی فعال کنید.
در Manifest V3 افزونه‌ها باید تمام کدهایی را که استفاده می‌کنند در داخل خود برنامه افزودنی قرار دهند. برای انجام این کار استراتژی های مختلفی وجود دارد.
برنامه‌های افزودنی Chrome دارای یک API اختصاصی ذخیره‌سازی هستند که برای همه اجزای برنامه افزودنی در دسترس است. این شامل چهار فضای ذخیره‌سازی مجزا برای موارد استفاده خاص و شنونده رویداد است که هر زمان که داده‌ها به‌روزرسانی می‌شوند، ردیابی می‌کند.
کارکنان خدمات دسترسی DOM ندارند. Offscreen API به برنامه افزودنی اجازه می دهد تا از API های DOM در یک سند مخفی بدون ایجاد وقفه در تجربه کاربر با باز کردن پنجره ها یا برگه های جدید استفاده کند.
جداسازی منبع متقابل به یک صفحه وب امکان می دهد از ویژگی های قدرتمندی مانند SharedArrayBuffer استفاده کند. یک برنامه افزودنی می‌تواند با تعیین مقادیر مناسب برای کلیدهای مانیفست "cross_origin_embedder_policy" و "cross_origin_opener_policy" از جداسازی متقاطع استفاده کند.
با نحوه جریان به‌روزرسانی برنامه‌های افزودنی به‌روزرسانی‌های Chrome و نحوه نظارت بر توزیع به‌روزرسانی‌های برنامه‌های افزودنی آشنا شوید.

موضوعات بیشتر