اکثر افزونهها برای کار کردن به دسترسی به یک یا چند Chrome Extensions API نیاز دارند. این مرجع میانای برنامهسازی کاربردی، میاناهای برنامهسازی کاربردی دردسترس برای استفاده در افزونهها را شرح میدهد و نمونه موارد استفاده را ارائه میکند.
از Chrome نسخه ۱۴۸ به بعد، این میاناهای برنامهسازی کاربردی تحت فضای نام browser
نیز بهعنوان جایگزین میانمرورگری برای chrome دردسترس هستند. برای راهنمایی درباره پذیرش،
فضای نام مرورگر
را ببینید.
ویژگیهای رایج میانای برنامهسازی کاربردی افزونهها
یک Extensions API شامل یک فضای نام است که حاوی روشها و ویژگیهایی برای انجام کار افزونهها است، و معمولاً، اما نه
همیشه، فیلدهای مانیفست برای فایل manifest.json. برای مثال، فضای نام browser.action به شیء "action" در مانیفست نیاز دارد. بسیاری از میاناهای برنامهسازی کاربردی به اجازههای مانیفست نیز نیاز دارند.
روشها در میاناهای برنامهسازی کاربردی افزونه ناهمگام هستند، مگراینکه خلاف آن ذکر شده باشد. روشهای ناهمگام بلافاصله برمیگردند، بدون اینکه منتظر بمانند تا عملیاتی که آنها را فراخوانی میکند تمام شود. از promises برای دریافت نتایج این روشهای ناهمگام استفاده کنید.
Chrome Extension API
- accessibilityFeatures
-
از
chrome.accessibilityFeaturesAPI برای مدیریت ویژگیهای دسترسپذیری Chrome استفاده کنید. این API برای دریافت و تنظیم ویژگیهای دسترسپذیری فردی به نمونه اولیه ChromeSetting از نوع API متکی است. برای دریافت وضعیتهای ویژگی، افزونه باید اجازهaccessibilityFeatures.readرا درخواست کند. برای اصلاح وضعیت ویژگی، افزونه به اجازهaccessibilityFeatures.modifyنیاز دارد. توجه داشته باشید کهaccessibilityFeatures.modifyبهمعنای اجازهaccessibilityFeatures.readنیست. - کنش
-
Chrome 88+ browser.* از Chrome 148 MV3+
از میانای برنامهسازی کاربردی
chrome.actionبرای کنترل نماد افزونه در نوارابزار Google Chrome استفاده کنید. - زنگهای ساعت
-
از میانای برنامهسازی کاربردی
chrome.alarmsبرای زمانبندی کد برای اجرا بهصورت دورهای یا در زمان مشخصی در آینده استفاده کنید. - صدا
-
Chrome نسخه ۵۹ و بالاتر browser.* از Chrome نسخه ۱۴۸ فقط ChromeOS
chrome.audioAPI برای این ارائه شده است که به کاربران اجازه دهد اطلاعاتی درباره دستگاههای صوتی متصل به سیستم دریافت کنند و آنها را کنترل کنند. این API درحالحاضر فقط در حالت کیوسک برای ChromeOS دردسترس است. - نشانکها
-
از
chrome.bookmarksAPI برای ایجاد، سازماندهی، و دستکاری نشانکها استفاده کنید. همچنین صفحههای لغو را ببینید که میتوانید از آن برای ایجاد صفحه سفارشی «مدیر نشانک» استفاده کنید. - browsingData
-
از
chrome.browsingDataAPI برای برداشتن دادههای مرور از نمایه محلی کاربر استفاده کنید. - certificateProvider
-
Chrome نسخه ۴۶ و بالاتر browser.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از این میانای برنامهسازی کاربردی برای نمایش گواهینامهها به پلاتفرمی استفاده کنید که میتواند از این گواهینامهها برای اصالتسنجیهای «امنیت لایه انتقال» استفاده کند.
- فرمانها
-
از commands API برای افزودن میانبرهای صفحهکلید استفاده کنید که کنشها را در افزونه شما راهاندازی میکنند، برای مثال، کنشی برای باز کردن کنش مرورگر یا ارسال فرمان به افزونه.
- contentSettings
-
از
chrome.contentSettingsAPI برای تغییر تنظیماتی استفاده کنید که کنترل میکنند آیا وبسایتها میتوانند از ویژگیهایی مانند کوکیها، جاوااسکریپت و افزونهها استفاده کنند. بهطور کلی، تنظیمات محتوا به شما امکان میدهد رفتار Chrome را بهجای اینکه بهصورت سراسری سفارشیسازی کنید، بهصورت جداگانه برای هر سایت سفارشیسازی کنید. - contextMenus
-
از
chrome.contextMenusAPI برای افزودن موارد به منوِ بافت Google Chrome استفاده کنید. میتوانید انتخاب کنید که موارد اضافهشده به منوی بافت برای چه نوع اشیایی اعمال شود، مثلاً تصاویر، اَبَرپیوندها، و صفحهها. - کوکیها
-
از
chrome.cookiesAPI برای پرسمان و اصلاح کوکیها و دریافت اعلان هنگام تغییر آنها استفاده کنید. - اشکالزدا
-
chrome.debuggerAPI بهعنوان انتقال جایگزین برای پروتکل اشکالزدایی از راه دور Chrome عمل میکند. ازchrome.debuggerبرای پیوست کردن به یک یا چند برگه برای ابزارسازی تعامل شبکه، اشکالزدایی جاوا اسکریپت، تغییر DOM و CSS، و موارد دیگر استفاده کنید. از ویژگیDebuggeetabIdبرای هدفیابی برگهها باsendCommandو مسیریابی رویدادها باtabIdاز فراخوانیهای برگشتیonEventاستفاده کنید. - declarativeContent
-
از
chrome.declarativeContentAPI برای انجام اقدامات براساس محتوای صفحه استفاده کنید، بدون اینکه به اجازه خواندن محتوای صفحه نیاز داشته باشید. - declarativeNetRequest
-
Chrome 84+ browser.* از Chrome 148
از
chrome.declarativeNetRequestAPI برای مسدود کردن یا اصلاح درخواستهای شبکه با مشخص کردن قوانین اعلانی استفاده میشود. این کار به افزونهها اجازه میدهد درخواستهای شبکه را بدون رهگیری آنها و مشاهده محتوایشان اصلاح کنند، بنابراین حریم خصوصی بیشتری فراهم میشود. - desktopCapture
-
Desktop Capture API محتوای صفحهنمایش، پنجرههای تکی، یا برگههای تکی را ضبط میکند.
- devtools.inspectedWindow
-
از
chrome.devtools.inspectedWindowAPI برای تعامل با پنجره بازرسیشده استفاده کنید: شناسه برگه را برای صفحه بازرسیشده دریافت کنید، کد را در زمینه پنجره بازرسیشده ارزیابی کنید، صفحه را مجدداً بار کنید، یا فهرست منابع درون صفحه را دریافت کنید. - devtools.network
-
از
chrome.devtools.networkAPI برای بازیابی اطلاعات مربوط به درخواستهای شبکه که توسط «ابزارهای توسعهدهندگان» در پانل «شبکه» نمایش داده میشود استفاده کنید. - devtools.panels
-
از میانای برنامهسازی کاربردی
chrome.devtools.panelsبرای ادغام افزونهتان در میانای کاربر پنجره «ابزارهای توسعهدهندگان» استفاده کنید: پانلهای خودتان را ایجاد کنید، به پانلهای موجود دسترسی پیدا کنید، و نوارهای کناری اضافه کنید. - devtools.performance
-
Chrome نسخه ۱۲۹ و بالاتر browser.* از Chrome نسخه ۱۵۲
از
chrome.devtools.performanceAPI برای گوش دادن به بهروزرسانیهای وضعیت ضبط در پانل «عملکرد» در DevTools استفاده کنید. - devtools.recorder
-
Chrome نسخه ۱۰۵ و بالاتر browser.* از Chrome نسخه ۱۵۲
از
chrome.devtools.recorderAPI برای سفارشیسازی پانل «ضبطصوت» در DevTools استفاده کنید. - dns
-
کانال برنامهنویسها
از
chrome.dnsAPI برای وضوح dns استفاده کنید. - documentScan
-
Chrome نسخه ۴۴ و بالاتر مرورگر.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از
chrome.documentScanAPI برای پیدا کردن و بازیابی تصاویر از اسکنرهای سند متصلشده استفاده کنید. - dom
-
Chrome 88+ browser.* از Chrome 148
از
chrome.domAPI برای دسترسی به APIهای DOM ویژه برای «افزونهها» استفاده کنید - بارگیریها
-
از میانای برنامهسازی کاربردی
chrome.downloadsبرای شروع، نظارت، دستکاری، و جستجوی بارگیریها بهصورت برنامهریزیشده استفاده کنید. - enterprise.deviceAttributes
-
از
chrome.enterprise.deviceAttributesAPI برای خواندن مشخصههای دستگاه استفاده کنید. توجه: این میانای برنامهسازی کاربردی فقط برای افزونههایی دردسترس است که با خطمشی سازمانی نصب اجباری شدهاند. - enterprise.hardwarePlatform
-
از میانای برنامهسازی کاربردی
chrome.enterprise.hardwarePlatformبرای دریافت سازنده و مدل پلاتفرم سختافزاری که مرورگر در آن اجرا میشود استفاده کنید. توجه: این API فقط برای افزونههای نصبشده توسط خطمشی سازمانی دردسترس است. - enterprise.login
-
از میانای برنامهسازی کاربردی
chrome.enterprise.loginبرای خروج از جلسههای «مهمان مدیریتشده» استفاده کنید. توجه: این میانای برنامهسازی کاربردی فقط برای افزونههایی دردسترس است که توسط خطمشی سازمانی در جلسههای «مهمان مدیریتشده» ChromeOS نصب شدهاند. - enterprise.networkingAttributes
-
از
chrome.enterprise.networkingAttributesAPI برای خواندن اطلاعات مربوط به شبکه فعلیتان استفاده کنید. توجه: این میانای برنامهسازی کاربردی فقط برای افزونههایی دردسترس است که با خطمشی سازمانی نصب اجباری شدهاند. - enterprise.platformKeys
-
فقط ChromeOS خطمشی لازم است
از
chrome.enterprise.platformKeysAPI برای تولید کلیدها و نصب گواهینامهها برای این کلیدها استفاده کنید. گواهینامهها توسط پلاتفرم مدیریت خواهند شد و میتوانند برای اصالتسنجی TLS، دسترسی به شبکه، یا توسط افزونههای دیگر ازطریق chrome.platformKeys استفاده شوند. - رویدادها
-
فضای نام
chrome.eventsحاوی انواع رایجی است که میاناهای برنامهسازی کاربردی برای ارسال رویدادها استفاده میکنند تا وقتی اتفاق جالبی میافتد به شما اطلاع دهند. - افزونه
-
chrome.extensionAPI دارای ابزارهایی است که هر صفحه افزونهای میتواند از آنها استفاده کند. این شامل پشتیبانی از تبادل پیام بین یک افزونه و اسکریپتهای محتوای آن یا بین افزونهها میشود، همانطور که بهطور مفصل در انتقال پیام توضیح داده شده است. - extensionTypes
-
chrome.extensionTypesAPI حاوی اعلانهای نوع برای افزونههای Chrome است. - fileBrowserHandler
-
فقط ChromeOS فقط پیشزمینه
از
chrome.fileBrowserHandlerAPI برای گسترش مرورگر فایل Chrome OS استفاده کنید. برای مثال، میتوانید از این API استفاده کنید تا کاربران بتوانند فایلها را در وبسایت شما بارگذاری کنند. - fileSystemProvider
-
فقط ChromeOS
از
chrome.fileSystemProviderAPI برای ایجاد سیستمهای فایل استفاده کنید که ازطریق مدیر فایل در Chrome OS قابلدسترسی است. - fontSettings
-
از
chrome.fontSettingsAPI برای مدیریت تنظیمات قلم Chrome استفاده کنید. - gcm
-
از
chrome.gcmبرای فعال کردن برنامهها و افزونهها برای ارسال و دریافت پیام ازطریق پیامرسانی ابری Firebase (FCM) استفاده کنید. - سابقه
-
از
chrome.historyAPI برای تعامل با سابقه صفحههای بازدیدشده در مرورگر استفاده کنید. میتوانید نشانیهای وب را در سابقه مرورگر اضافه، حذف، و پُرسمان کنید. برای لغو کردن صفحه سابقه با نسخه خودتان، لغو کردن صفحهها را ببینید. - i18n
-
از زیرساخت
chrome.i18nبرای پیادهسازی بینالمللیسازی در کل برنامه یا افزونهتان استفاده کنید. - هویت
-
از
chrome.identityAPI برای دریافت کدهای دسترسی OAuth2 استفاده کنید. - بیکار
-
از
chrome.idleAPI برای تشخیص زمان تغییر وضعیت غیرفعال دستگاه استفاده کنید. - input.ime
-
فقط ChromeOS
از
chrome.input.imeAPI برای پیادهسازی IME سفارشی برای Chrome OS استفاده کنید. این کار به افزونه شما اجازه میدهد تا کلیدهای فشردهشده را مدیریت کند، ترکیببندی را تنظیم کند، و پنجره نامزد را مدیریت کند. - instanceID
-
Chrome نسخه ۴۴ و بالاتر browser.* از Chrome نسخه ۱۴۸
برای دسترسی به سرویس «شناسه نمونه»، از
chrome.instanceIDاستفاده کنید. - loginState
-
Chrome نسخه ۷۸ و بالاتر browser.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از
chrome.loginStateAPI برای خواندن و نظارت بر وضعیت ورود به سیستم استفاده کنید. - مدیریت
-
chrome.managementAPI روشهایی برای مدیریت برنامهها و افزونههای نصبشده ارائه میدهد. - mimeHandler
-
Chrome نسخه ۱۵۱ و بالاتر
از
chrome.mimeHandlerAPI برای مدیریت جاریسازیهای نوع MIME در افزونههای طرف سوم استفاده کنید. - اعلانها
-
از میانای برنامهسازی کاربردی
chrome.notificationsبرای ایجاد اعلانهای غنی بااستفاده از الگوها و نمایش این اعلانها به کاربران در سینی سیستم استفاده کنید. - خارج از صفحه
-
Chrome نسخه ۱۰۹ و بالاتر browser.* از Chrome نسخه ۱۴۸ MV3 و بالاتر
از
offscreenAPI برای ایجاد و مدیریت اسناد خارجاز صفحه استفاده کنید. - omnibox
-
omnibox API به شما امکان میدهد کلیدواژهای را در نوار نشانی Google Chrome (که omnibox نیز نامیده میشود) ثبت کنید.
- pageCapture
-
از میانای برنامهسازی کاربردی
chrome.pageCaptureبرای ذخیره کردن برگه بهعنوان MHTML استفاده کنید. - اجازهها
-
از
chrome.permissionsAPI برای درخواست اجازههای اختیاری اعلامشده در زمان اجرا بهجای زمان نصب استفاده کنید تا کاربران متوجه شوند چرا این اجازهها لازم است و فقط اجازههای ضروری را اعطا کنند. - platformKeys
-
Chrome نسخه ۴۵ و بالاتر مرورگر.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از
chrome.platformKeysAPI برای دسترسی به گواهینامههای کارخواه مدیریتشده توسط پلاتفرم استفاده کنید. اگر کاربر یا خطمشی اجازه را اعطا کند، افزونه میتواند از چنین گواهینامهای در پروتکل اصالتسنجی سفارشی خود استفاده کند. برای مثال، این کار اجازه میدهد از گواهیهای مدیریتشده پلاتفرم در ویپیانهای طرف سوم استفاده شود (chrome.vpnProvider را ببینید). - روشن/خاموش
-
از
chrome.powerAPI برای لغو ویژگیهای مدیریت مصرف برق سیستم استفاده کنید. - printerProvider
-
Chrome نسخه ۴۴ و بالاتر browser.* از Chrome نسخه ۱۴۸
chrome.printerProviderAPI رویدادهای مورداستفاده مدیر چاپ را برای پرسمان چاپگرهای تحت کنترل افزونهها، پرسمان قابلیتهای آنها، و ارسال کارهای چاپ به این چاپگرها نشان میدهد. - درحال چاپ
-
Chrome 81+ browser.* از Chrome 148 فقط ChromeOS
از
chrome.printingAPI برای ارسال کارهای چاپ به چاپگرهای نصبشده در Chromebook استفاده کنید. - printingMetrics
-
از میانای برنامهسازی کاربردی
chrome.printingMetricsبرای واکشی دادههای مربوط به استفاده از چاپ استفاده کنید. - حریم خصوصی
-
از
chrome.privacyAPI برای کنترل استفاده از ویژگیهایی در Chrome که میتوانند بر حریم خصوصی کاربر تأثیر بگذارند استفاده کنید. این میانای برنامهسازی کاربردی برای دریافت و تنظیم پیکربندی Chrome به نمونه اولیه ChromeSetting از نوع میانای برنامهسازی کاربردی متکی است. - فرایندها
-
کانال برنامهنویسها
از میانای برنامهسازی کاربردی
chrome.processesبرای تعامل با فرایندهای مرورگر استفاده کنید. - پراکسی
-
از میانای برنامهسازی کاربردی
chrome.proxyبرای مدیریت تنظیمات پراکسی Chrome استفاده کنید. این میانای برنامهسازی کاربردی برای دریافت و تنظیم پیکربندی پراکسی به نمونه اولیه ChromeSetting از نوع میانای برنامهسازی کاربردی متکی است. - publicSuffix
-
Chrome نسخه ۱۵۳ و بالاتر
از میانای برنامهسازی کاربردی
chrome.publicSuffixبرای پُرسمان «فهرست پسوند عمومی» (PSL) مرورگر استفاده کنید. - readingList
-
Chrome 120+ browser.* از Chrome 148 MV3+
از
chrome.readingListAPI برای خواندن و اصلاح موارد در فهرست خواندن استفاده کنید. - زمان اجرا
-
از
chrome.runtimeAPI برای بازیابی کارگر سرویس، برگرداندن جزئیات مانیفست، و گوش دادن و پاسخ دادن به رویدادها در چرخه حیات افزونه استفاده کنید. همچنین میتوانید از این میانای برنامهسازی کاربردی برای تبدیل مسیر نسبی نشانیهای وب به نشانیهای وب کاملاً واجد شرایط استفاده کنید. - اسکریپتنویسی
-
Chrome 88+ browser.* از Chrome 148 MV3+
از
chrome.scriptingAPI برای اجرای اسکریپت در زمینههای مختلف استفاده کنید. - جستجو
-
Chrome نسخه ۸۷ و بالاتر browser.* از Chrome نسخه ۱۴۸
از
chrome.searchAPI برای جستجو ازطریق ارائهدهنده پیشفرض استفاده کنید. - جلسهها
-
از
chrome.sessionsAPI برای پرسمان و بازیابی برگهها و پنجرهها از جلسه مرور استفاده کنید. - sidePanel
-
Chrome نسخه ۱۱۴ و بالاتر browser.* از Chrome نسخه ۱۴۸ MV3 و بالاتر
از
chrome.sidePanelAPI برای میزبانی محتوا در پانل کناری مرورگر درکنار محتوای اصلی صفحه وب استفاده کنید. - فضای ذخیرهسازی
-
از
chrome.storageAPI برای ذخیره، بازیابی، و پیگیری تغییرات دادههای کاربر استفاده کنید. - system.cpu
-
از
system.cpuAPI برای پُرسمان فرادادههای واحد پردازش مرکزی استفاده کنید. - system.display
-
از
system.displayAPI برای پرسمان فراداده نمایش استفاده کنید. - system.memory
-
chrome.system.memoryAPI. - system.storage
-
از
chrome.system.storageAPI برای جستجوی اطلاعات دستگاه ذخیرهسازی استفاده کنید و وقتی دستگاه ذخیرهسازی جداشدنی متصل یا جدا میشود، مطلع شوید. - systemLog
-
از
chrome.systemLogAPI برای ضبط گزارشهای سیستم Chrome از افزونهها استفاده کنید. - tabCapture
-
از
chrome.tabCaptureAPI برای تعامل با جاریسازیهای رسانه برگه استفاده کنید. - tabGroups
-
Chrome 89+ browser.* از Chrome 148 MV3+
از میانای برنامهسازی کاربردی
chrome.tabGroupsبرای تعامل با سیستم گروهبندی برگه مرورگر استفاده کنید. میتوانید از این API برای اصلاح و بازآرایی گروههای برگه در مرورگر استفاده کنید. برای گروهبندی کردن و ازگروه خارج کردن زبانهها، یا برای جستجوی اینکه چه زبانههایی در گروهها هستند، ازchrome.tabsAPI استفاده کنید. - برگهها
-
از میانای برنامهسازی کاربردی
chrome.tabsبرای تعامل با سیستم برگه مرورگر استفاده کنید. میتوانید از این API برای ایجاد، اصلاح، و بازآرایی برگهها در مرورگر استفاده کنید. - topSites
-
از
chrome.topSitesAPI برای دسترسی به سایتهای برتر (یعنی سایتهای پربازدید) که در صفحه برگه جدید نمایش داده میشوند استفاده کنید. این میانبرها شامل میانبرهای سفارشیشده توسط کاربر نمیشود. - tts
-
از
chrome.ttsAPI برای پخش نوشتار به گفتار (TTS) ترکیبی استفاده کنید. همچنینttsEngineAPI مرتبط را ببینید که به افزونه اجازه میدهد موتور گفتار را پیادهسازی کند. - ttsEngine
-
از
chrome.ttsEngineAPI برای پیادهسازی موتور نوشتار به گفتار(TTS) بااستفاده از افزونه استفاده کنید. اگر افزونه شما بااستفاده از این API ثبت شود، وقتی هر افزونه یا «برنامه Chrome» از APIttsبرای تولید گفتار استفاده کند، رویدادهای حاوی گفتهای که باید بیان شود و پارامترهای دیگر را دریافت خواهد کرد. سپس افزونه شما میتواند از هر فناوری وب دردسترسی برای ترکیب و خروجی گفتار استفاده کند و رویدادها را برای گزارش وضعیت به تابع فراخواننده ارسال کند. - انواع
-
chrome.typesAPI حاوی اعلانهای نوع برای Chrome است. - userScripts
-
Chrome 120+ browser.* از Chrome 148 MV3+
از
userScriptsAPI برای اجرای اسکریپتهای کاربر در بافت «اسکریپتهای کاربر» استفاده کنید. - vpnProvider
-
Chrome نسخه ۴۳ و بالاتر browser.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از
chrome.vpnProviderAPI برای پیادهسازی کلاینت VPN استفاده کنید. - کاغذدیواری
-
Chrome نسخه ۴۳ و بالاتر browser.* از Chrome نسخه ۱۴۸ فقط ChromeOS
از میانای برنامهسازی کاربردی
chrome.wallpaperبرای تغییر کاغذدیواری ChromeOS استفاده کنید. - webAuthenticationProxy
-
Chrome 115+ browser.* از Chrome 148 MV3+
chrome.webAuthenticationProxyAPI به نرمافزار میزکار از دور که روی میزبان از دور اجرا میشود اجازه میدهد درخواستهای Web Authentication API (WebAuthn) را رهگیری کند تا بتواند آنها را در کارخواه محلی مدیریت کند. - webNavigation
-
از میانای برنامهسازی کاربردی
chrome.webNavigationبرای دریافت اعلان درباره وضعیت درخواستهای ناوبری درحال انجام استفاده کنید. - webRequest
-
از
chrome.webRequestAPI برای مشاهده و تجزیهوتحلیل ترافیک و رهگیری، مسدود کردن، یا اصلاح درخواستهای درحال پردازش استفاده کنید. - windows
-
از
chrome.windowsAPI برای تعامل با پنجرههای مرورگر استفاده کنید. میتوانید از این API برای ایجاد، اصلاح، و بازآرایی پنجرهها در مرورگر استفاده کنید.