به Manifest V3 مهاجرت کنید

راهنمای تبدیل افزونه‌های Manifest V2 به افزونه‌های Manifest V3.

این بخش به شما کمک می‌کند تا یک افزونه را از Manifest V2 به Manifest V3، جدیدترین نسخه پلتفرم افزونه‌های کروم، ارتقا دهید. کار انتقال به‌طورکلی به دسته‌های زیر تقسیم می‌شود. برای کمک به شما در پیگیری کار خود، یک چک‌لیست ارائه کرده‌ایم که خلاصه‌ای از محتوای این اسناد را ارائه می‌دهد. می‌توانید با استفاده از چک‌لیست به محتوا دسترسی پیدا کنید یا به طور کامل به محتوا بپردازید. هر دو مسیر به یک افزونه ارتقا یافته ختم می‌شوند.

  • به‌روزرسانی مانیفستmanifest.json باید مختص نسخه ۳ باشد. تغییراتی که می‌توانند به تنهایی اعمال شوند، در این بخش شرح داده شده‌اند. تغییرات مانیفست مربوط به کد، به همراه تغییرات کدی که پشتیبانی می‌کنند، شرح داده شده‌اند.
  • مهاجرت به یک سرویس ورکر — یک سرویس ورکر پس‌زمینه یا صفحه رویداد افزونه را جایگزین می‌کند تا اطمینان حاصل شود که کد پس‌زمینه از نخ اصلی که می‌تواند به عملکرد آسیب برساند، دور می‌ماند. این تغییر همچنین نیاز به انتقال DOM، پنجره و برخی از فراخوانی‌های API افزونه به اسناد خارج از صفحه دارد.
  • به‌روزرسانی فراخوانی‌های API — برخی از فراخوانی‌های API باید با معادل‌های مدرن‌تر جایگزین شوند.
  • جایگزینی شنونده‌های درخواست وب مسدودکننده — مسدود کردن یا تغییر درخواست‌های شبکه در Manifest V2 می‌تواند عملکرد را به میزان قابل توجهی کاهش دهد و نیاز به دسترسی بیش از حد به داده‌های حساس کاربر داشته باشد. API درخواست اعلانی Net به افزونه‌ها اجازه می‌دهد تا محتوای وب را با مجوزهای کمتر و بدون ایجاد مانع در عملکرد، مسدود یا تغییر دهند.
  • بهبود امنیت افزونه‌ها — Manifest V3 امنیت افزونه‌ها را از چندین طریق بهبود می‌بخشد. علاوه بر یک سیاست امنیتی محتوای بهبود یافته، پشتیبانی از کد میزبانی شده از راه دور و اجرای رشته‌های دلخواه حذف شده است.
  • انتشار افزونه — این بخش نحوه انتشار مرحله‌ای افزونه Manifest V3 شما را شرح می‌دهد تا با آزمایش اولیه آن با مخاطبان محدود، از عملکرد مورد انتظار آن اطمینان حاصل شود.

ما همچنین یک مبدل مانیفست افزونه داریم. این مبدل همه کارها را برای شما انجام نمی‌دهد، اما به شما کمک می‌کند تا شروع کنید. فایل README مبدل توضیح می‌دهد که این ابزار چه تغییراتی ایجاد می‌کند.

مجموعه ویژگی‌های فعلی را حفظ کنید

برای کاهش احتمال بروز مشکلات یا باگ‌های غیرمنتظره، توصیه می‌کنیم هنگام مهاجرت، قابلیت‌های جدید اضافه نکنید. به عنوان مثال، اضافه کردن ویژگی‌ای که نیاز به مجوزهای جدید دارد، ممکن است باعث ایجاد هشدار مجوز شود که افزونه شما را تا زمانی که کاربر مجوزهای جدید را بپذیرد، غیرفعال می‌کند. برای آشنایی با روش‌های دیگر اضافه کردن مجوزها بدون نمایش هشدار، به بهترین شیوه‌های هشدار مجوز مراجعه کنید.

Manifest V3 به طور کلی در Chrome 88 یا بالاتر پشتیبانی می‌شود. هنگام به‌روزرسانی فراخوانی‌های API، ممکن است متوجه شوید که ویژگی‌های جایگزین ممکن است تا بعد از نسخه ۸۸ در Chrome ارائه نشده باشند . صفحات مرجع API حاوی اطلاعات پشتیبانی برای اعضای API به صورت جداگانه هستند. اگر متوجه شدید که به یکی از این ویژگی‌ها نیاز دارید، می‌توانید حداقل نسخه کروم را در فایل manifest مشخص کنید.

ویژگی‌های جدید پلتفرم افزونه

از زمان انتشار Manifest V3، ما به اضافه کردن ویژگی‌های جدید ادامه داده‌ایم که بسیاری از آنها هم در Manifest V2 و هم در Manifest V3 قابل استفاده هستند. شما هنگام تبدیل ملزم به استفاده از آنها نیستید؛ با این حال، هنگامی که آنها جایگزین ویژگی‌های قدیمی‌تر می‌شوند، باید آنها را به ویژگی‌هایی که جایگزین می‌شوند ترجیح دهید و انتظار داشته باشید که ویژگی‌های جایگزین شده در نهایت منسوخ و حذف شوند.