chrome.management

refresh date: 2026-09-25 robots: noindex

شرح

chrome.management API روش‌هایی برای مدیریت برنامه‌ها و افزونه‌های نصب‌شده ارائه می‌دهد.

اجازه‌ها

management

مانیفست

برای استفاده از API مدیریت، باید اجازه «مدیریت» را در مانیفست افزونه اعلام کنید. برای مثال:

{
  "name": "My extension",
  ...
  "permissions": [
    "management"
  ],
  ...
}

management.getPermissionWarningsByManifest، management.uninstallSelf، و management.getSelf به اجازه مدیریت نیاز ندارند.

انواع

ExtensionDisabledReason

Chrome نسخه ۴۴ به بالا

دلیلی که مورد غیرفعال شده است.

شمارشی

«unknown»

"permissions_increase"

ExtensionInfo

اطلاعات مربوط به افزونه، برنامه، یا زمینه نصب‌شده.

مشخصات

  • appLaunchUrl

    رشته اختیاری

    نشانی وب راه‌اندازی (فقط برای برنامه‌ها وجود دارد).

  • availableLaunchTypes

    LaunchType[] اختیاری

    انواع راه‌اندازی دردسترس فعلی (فقط برای برنامه‌ها وجود دارد).

  • description

    رشته

    شرح این افزونه، برنامه، یا طرح زمینه.

  • disabledReason

    ExtensionDisabledReason اختیاری

    دلیلی که مورد غیرفعال شده است.

  • فعال شد

    بولی

    درحال‌حاضر فعال یا غیرفعال است.

  • homepageUrl

    رشته اختیاری

    نشانی وب صفحه اصلی این افزونه، برنامه، یا طرح زمینه.

  • hostPermissions

    string[]

    فهرستی از اجازه‌های مبتنی بر میزبان را برمی‌گرداند.

  • نمادها

    IconInfo[] اختیاری

    فهرستی از اطلاعات نماد. توجه داشته باشید که این فقط نشان‌دهنده آنچه در مانیفست اعلام شده است می‌باشد و تصویر واقعی در آن نشانی وب ممکن است بزرگ‌تر یا کوچک‌تر از آنچه اعلام شده باشد، بنابراین می‌توانید از ویژگی‌های صریح عرض و ارتفاع در برچسب‌های img که به این تصاویر ارجاع می‌دهند استفاده کنید. برای جزئیات بیشتر، مستندات مانیفست درباره نمادها را ببینید.

  • id

    رشته

    شناسه یکتای افزونه.

  • installType

    افزونه چگونه نصب شده است.

  • isApp

    بولی

    منسوخ‌شده

    لطفاً از management.ExtensionInfo.type استفاده کنید.

    اگر این برنامه باشد، درست است.

  • launchType

    LaunchType اختیاری

    نوع راه‌اندازی برنامه (فقط برای برنامه‌ها وجود دارد).

  • mayDisable

    بولی

    اینکه آیا این افزونه می‌تواند توسط کاربر غیرفعال یا حذف نصب شود یا نه.

  • mayEnable

    بولی اختیاری

    Chrome نسخه ۶۲ به بالا

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

  • نام

    رشته

    نام این افزونه، برنامه، یا طرح زمینه.

  • offlineEnabled

    بولی

    اینکه افزونه، برنامه، یا زمینه اعلام کند که از حالت آفلاین پشتیبانی می‌کند.

  • optionsUrl

    رشته

    نشانی وب صفحه گزینه‌های مورد، درصورت وجود.

  • اجازه‌ها

    string[]

    فهرستی از اجازه‌های مبتنی بر میانای برنامه‌سازی کاربردی را برمی‌گرداند.

  • shortName

    رشته

    نسخه کوتاهی از نام این افزونه، برنامه، یا زمینه.

  • نوع

    نوع این افزونه، برنامه، یا طرح زمینه.

  • updateUrl

    رشته اختیاری

    نشانی وب به‌روزرسانی این افزونه، برنامه، یا طرح زمینه.

  • نسخه

    رشته

    نسخه این افزونه، برنامه، یا طرح زمینه.

  • versionName

    رشته اختیاری

    Chrome نسخه ۵۰ و بالاتر

    نام نسخه این افزونه، برنامه، یا زمینه، اگر مانیفست آن را مشخص کرده باشد.

ExtensionInstallType

Chrome نسخه ۴۴ به بالا

افزونه چگونه نصب شده است. یکی از موارد زیر: admin: افزونه به‌دلیل خط‌مشی مدیریتی نصب شده است، development: افزونه به‌صورت غیرفشرده در حالت توسعه‌دهنده بار شده است، normal: افزونه به‌صورت عادی ازطریق فایل crx .نصب شده است، sideload: افزونه توسط نرم‌افزار دیگری در دستگاه نصب شده است، other: افزونه ازطریق روش دیگری نصب شده است.

شمارشی

"admin"

«توسعه»

«عادی»

«بارگذاری جانبی»

«دیگر»

ExtensionType

Chrome نسخه ۴۴ به بالا

نوع این افزونه، برنامه، یا طرح زمینه.

شمارشی

«افزونه»

"hosted_app"

"packaged_app"

"legacy_packaged_app"

"theme"

"login_screen_extension"

IconInfo

اطلاعات مربوط به نمادی که به افزونه، برنامه، یا زمینه‌ای تعلق دارد.

مشخصات

  • اندازه

    شماره

    عددی که نشان‌دهنده عرض و ارتفاع نماد است. مقادیر احتمالی شامل (اما نه محدود به) ۱۲۸، ۴۸، ۲۴، و ۱۶ است.

  • نشانی وب

    رشته

    نشانی وب این تصویر نماد. برای نمایش نسخه خاکستری نماد (مثلاً برای نشان دادن اینکه افزونه غیرفعال است)، ?grayscale=true را به نشانی وب اضافه کنید.

LaunchType

این‌ها همه انواع ممکن راه‌اندازی برنامه هستند.

شمارشی

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

«OPEN_AS_WINDOW»

"OPEN_FULL_SCREEN"

UninstallOptions

Chrome نسخه ۸۸ و بالاتر

گزینه‌هایی برای نحوه مدیریت حذف نصب افزونه.

مشخصات

  • showConfirmDialog

    بولی اختیاری

    آیا کادر گفتگوی تأیید حذف نصب باید به کاربر نشان داده شود یا نه. برای حذف نصب‌های خودکار، به‌طور پیش‌فرض روی نادرست تنظیم شده است. اگر افزونه‌ای افزونه دیگری را حذف نصب کند، این پارامتر نادیده گرفته می‌شود و کادر گفتگو همیشه نشان داده می‌شود.

روش‌ها

createAppShortcut()

قول
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)
: Promise<void>

گزینه‌هایی را برای ایجاد میان‌بر برای برنامه نمایش می‌دهد. در Mac، فقط میان‌برهای برنامه بسته‌بندی‌شده را می‌توان ایجاد کرد.

پارامترها

  • id

    رشته

    این باید شناسه موردی از برنامه management.ExtensionInfo باشد.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

قول
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)
: Promise<ExtensionInfo>

برنامه‌ای برای نشانی وب تولید کنید. برنامه نشانک تولیدشده را برمی‌گرداند.

پارامترها

  • رشته

    نشانی وب صفحه وب. طرح نشانی وب فقط می‌تواند «http» یا «https» باشد.

  • رشته

    عنوان برنامه تولیدشده.

  • تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (result: ExtensionInfo) => void

بازگشتی‌ها

  • Promise<ExtensionInfo>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

get()

قول
chrome.management.get(
  id: string,
  callback?: function,
)
: Promise<ExtensionInfo>

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

پارامترها

بازگشتی‌ها

  • Promise<ExtensionInfo>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getAll()

قول
chrome.management.getAll(
  callback?: function,
)
: Promise<ExtensionInfo[]>

فهرستی از اطلاعات مربوط به افزونه‌ها و برنامه‌های نصب‌شده را برمی‌گرداند.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (result: ExtensionInfo[]) => void

بازگشتی‌ها

  • Promise<ExtensionInfo[]>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getPermissionWarningsById()

قول
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)
: Promise<string[]>

فهرستی از هشدارهای اجازه برای شناسه افزونه داده‌شده برمی‌گرداند.

پارامترها

  • id

    رشته

    شناسه افزونه‌ای که قبلاً نصب شده است.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (permissionWarnings: string[]) => void

    • permissionWarnings

      string[]

بازگشتی‌ها

  • Promise<string[]>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getPermissionWarningsByManifest()

قول
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)
: Promise<string[]>

فهرستی از هشدارهای اجازه را برای رشته مانیفست افزونه داده‌شده برمی‌گرداند. توجه: از این تابع می‌توان بدون درخواست اجازه «مدیریت» در مانیفست استفاده کرد.

پارامترها

  • manifestStr

    رشته

    رشته JSON مانیفست افزونه.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (permissionWarnings: string[]) => void

    • permissionWarnings

      string[]

بازگشتی‌ها

  • Promise<string[]>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getSelf()

قول
chrome.management.getSelf(
  callback?: function,
)
: Promise<ExtensionInfo>

اطلاعات مربوط به افزونه، برنامه، یا زمینه فراخواننده را برمی‌گرداند. توجه: از این تابع می‌توان بدون درخواست اجازه «مدیریت» در مانیفست استفاده کرد.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (result: ExtensionInfo) => void

بازگشتی‌ها

  • Promise<ExtensionInfo>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

installReplacementWebApp()

Promise Chrome نسخه ۷۷ و بالاتر
chrome.management.installReplacementWebApp(
  callback?: function,
)
: Promise<void>

replacement_web_app مشخص‌شده در مانیفست را راه‌اندازی می‌کند. اگر برنامه ازقبل نصب نشده باشد، از کاربر درخواست می‌کند آن را نصب کند.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

launchApp()

قول
chrome.management.launchApp(
  id: string,
  callback?: function,
)
: Promise<void>

برنامه‌ای را راه‌اندازی می‌کند.

پارامترها

  • id

    رشته

    شناسه افزونه برنامه.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

setEnabled()

قول
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)
: Promise<void>

برنامه یا افزونه‌ای را فعال یا غیرفعال می‌کند. در بیشتر موارد، این تابع باید در زمینه اشاره کاربر (مثلاً کنترل‌کننده onclick برای دکمه) فراخوانی شود و ممکن است برای جلوگیری از سوءاستفاده، واسط کاربر تأیید بومی به کاربر ارائه دهد.

پارامترها

  • id

    رشته

    این باید شناسه موردی از management.ExtensionInfo باشد.

  • فعال شد

    بولی

    اینکه این مورد باید فعال باشد یا غیرفعال.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

setLaunchType()

قول
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)
: Promise<void>

نوع راه‌اندازی برنامه را تنظیم کنید.

پارامترها

  • id

    رشته

    این باید شناسه موردی از برنامه management.ExtensionInfo باشد.

  • launchType

    نوع راه‌اندازی هدف. همیشه بررسی کنید و مطمئن شوید که این نوع راه‌اندازی در ExtensionInfo.availableLaunchTypes باشد، زیرا انواع راه‌اندازی دردسترس در پلاتفرم‌ها و پیکربندی‌های مختلف متفاوت است.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

uninstall()

قول
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)
: Promise<void>

برنامه یا افزونه‌ای را که درحال‌حاضر نصب شده است حذف نصب می‌کند. توجه: این عملکرد در محیط‌های مدیریت‌شده که کاربر مجاز به حذف نصب افزونه/ برنامه مشخص‌شده نیست کار نمی‌کند. اگر حذف نصب ناموفق باشد (مثلاً کاربر کادر گفتگو را لغو کند)، وعده رد خواهد شد یا فراخوانی با تنظیم runtime.lastError فراخوانده خواهد شد.

پارامترها

  • id

    رشته

    این باید شناسه موردی از management.ExtensionInfo باشد.

  • گزینه‌ها

    UninstallOptions اختیاری

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

uninstallSelf()

قول
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)
: Promise<void>

افزونه تماس را حذف نصب می‌کند. توجه: از این تابع می‌توان بدون درخواست اجازه «مدیریت» در مانیفست استفاده کرد. این عملکرد در محیط‌های مدیریت‌شده که کاربر مجاز به حذف نصب افزونه/برنامه مشخص‌شده نیست کار نمی‌کند.

پارامترها

  • گزینه‌ها

    UninstallOptions اختیاری

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۸۸ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

رویدادها

onDisabled

chrome.management.onDisabled.addListener(
  callback: function,
)

وقتی برنامه یا افزونه‌ای غیرفعال شده باشد، فعال می‌شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (info: ExtensionInfo) => void

onEnabled

chrome.management.onEnabled.addListener(
  callback: function,
)

وقتی برنامه یا افزونه‌ای فعال شده باشد، فعال می‌شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (info: ExtensionInfo) => void

onInstalled

chrome.management.onInstalled.addListener(
  callback: function,
)

وقتی برنامه یا افزونه‌ای نصب شده باشد، فعال می‌شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (info: ExtensionInfo) => void

onUninstalled

chrome.management.onUninstalled.addListener(
  callback: function,
)

وقتی برنامه یا افزونه‌ای حذف نصب می‌شود، فعال می‌شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (id: string) => void

    • id

      رشته