الميزات الجديدة في إضافات Chrome

اطّلع على هذه الصفحة من حين لآخر للتعرّف على التغييرات التي تطرأ على إضافات Chrome، أو وثائق الإضافات، أو السياسة ذات الصلة، أو التغييرات الأخرى. ستظهر لك الإشعارات الأخرى المنشورة في "مجموعة Google" للإضافات. يسرد جدول Chrome تواريخ الإصدار الثابت والتجريبي.

عمليات العودة إلى الإصدارات السابقة من "لوحة بيانات المطوّر" في "سوق Chrome الإلكتروني"

تاريخ النشر:

يمكنك إعادة إضافتك إلى الإصدار السابق المنشور في "سوق Chrome الإلكتروني" بدون مراجعة إضافية. يمكنك الاطّلاع على مشاركة المدونة والمستندات لمزيد من المعلومات.

Chrome 124: واجهة برمجة التطبيقات Advanced DocumentScan API

تاريخ النشر:

تتوفّر الآن documentScan API متقدّمة على ChromeOS لاستكشاف الصور واستردادها من الماسحات الضوئية للمستندات المرفقة.

Chrome 124: إتاحة WebGPU في مشغّلي الخدمات

تاريخ النشر:

بدايةً من إصدار Chrome 124، يتوافق مشغّلو الخدمات مع WebGPU. للبدء بسرعة، يُرجى الاطّلاع على نموذج إضافة WebGPU.

Chrome 123: تتيح واجهة برمجة التطبيقات Events API الفلترة حسب مجموعات CIDR.

تاريخ النشر:

أصبحت واجهة Events API الآن متوافقة مع الفلترة عن طريق وحدات التوجيه بين المجالات غير الفئوية (CIDR). كتلة CIDR هي مجموعة من عناوين IP التي تشترك في بادئة الشبكة ونفس العدد من وحدات البت. في السابق، كان مطوّر البرامج يحتاج إلى فلترة عدة عناوين IP من أجل إعداد قاعدة فلترة لكل عنوان من العناوين في نطاق الكتل. والآن، عند استدعاء إحدى الإضافات addListener()، تعني القاعدة "اجتياز" أنّه سيتم استدعاء معالج الأحداث فقط عندما يكون جزء المضيف من عنوان URL هو عنوان IP ويتم تضمينه في أي من كتل CIDR المحددة في مصفوفة.

سوق Chrome الإلكتروني: تعديلات على متطلبات طول اسم الإضافة

تاريخ النشر:

في "سوق Chrome الإلكتروني"، يتوفّر الآن حد عام يبلغ 75 حرفًا في حقل "name" الخاص بإحدى الإضافات في ملف manifest.json. في السابق، كان الحدّ الأقصى المسموح به لعدد الأحرف في اللغة الإنجليزية هو 45 حرفًا، ولم يكن هناك أي قيود على الحقل "name" في اللغات الأخرى.

كان الغرض من ذلك في الأصل هو السماح بالاختلافات الثقافية واللغوية التي قد لا يمكن تمثيلها بنفس عدد الأحرف. للأسف، أساء عدد قليل من المطورين استخدام هذه الميزة لإرسال محتوى غير مرغوب فيه إلى المتجر. ونتيجةً لذلك، سنطرح حدًا عالميًا جديدًا، هو زيادة عدد الأحرف إلى 75 حرفًا. يشمل هذا الحدّ الأقصى اليوم جميع الإضافات في المتجر تقريبًا، لذلك من المحتمل ألا تكون بحاجة إلى اتّخاذ أي إجراء نتيجةً لهذا التغيير. وإذا حاولت تحميل إضافة باسم أطول من الحدّ الأقصى المسموح به، سيتم حظر التحميل من خلال المتجر.

مشاركة مدونة: رحلة Eyeo لاختبار تعليق حسابات موظفي الخدمات

تاريخ النشر:

في هذه المشاركة التي نشرها فريق Extension Engine في eyeo، نستكشف مشكلة اختبار موظفي خدمات الإضافات. في الإصدار 2 من Manifest V2، كانت الإضافات متوفّرة في صفحة خلفية، وكانت هذه الإضافات نشطة طوال فترة عمل الإضافة. في الإصدار 3 من Manifest V3، يستخدم إصدار Manifest V3 مشغِّلي الخدمات بدلاً من ذلك، فيما يحافظ إصدار Manifest V3 على توفير الموارد من خلال إيقاف تشغيله عند عدم الحاجة إليه. يمثل هذا بعض تحديات الاختبار. توضّح هذه المشاركة كيف تعاملت العين مع هذه التحديات.

Chrome 123: تشغيل المنبّهات الآن عندما يكون الجهاز في وضع السكون

تاريخ النشر:

لن تتأخر المنبّهات التي تم ضبطها باستخدام chrome.alarms API بعد الآن عندما ينتقل الجهاز إلى وضع السكون. عندما يستيقظ الجهاز، سيتم تشغيل المنبه مرة واحدة بغض النظر عن عدد المنبهات الفائتة. على سبيل المثال، لنفترض أنّه تم ضبط منبه ليرن مرة كل ساعة وأن الجهاز الذي يتم تشغيله في وضع السكون من الساعة 12:55 صباحًا إلى 2:05 صباحًا، ثم يعمل المنبه فقط على الساعة 2:00 صباحًا تشغيل الحدث onAlarm. وسينطلق الجهاز بالقرب من الساعة 2:00 صباحًا قدر الإمكان، وفور تنشيط الجهاز إذا كان نائمًا.

يدمج هذا التغيير Chrome مع السلوك المتفق عليه في مجموعة منتدى إضافات الويب.

مشاركة المدونة: تغييرات في سلوك ميزة "التخزين المؤقت للصفحات" باستخدام منافذ رسائل الإضافات

تاريخ النشر:

التخزين المؤقت للصفحات (bfcache) هي أداة تحسين في المتصفح تتيح التنقّل الفوري للأمام والخلف. وبدءًا من الإصدار 123 من Chrome، عند تخزين صفحة تحتوي على منفذ إضافة مفتوح في ميزة "التخزين المؤقت للصفحات"، يتم إغلاق قناة الرسالة، ما يعني أنّه لن يتم إرسال أي رسائل إلى تلك الصفحة. وبالتالي، يجب أن ترصد النصوص البرمجية للإضافات أحداث مراحل نشاط مثل onDisconnect وتضبط عملية ربط جديدة عند استعادة الصفحة من ذاكرة التخزين المؤقت للصفحات.

للحصول على مزيد من المعلومات ونموذج الرمز البرمجي، يمكنك الاطّلاع على التغييرات في سلوك BFcache مع منافذ رسائل الإضافات.

Chrome 122: تقديم وعود بدعم واجهات برمجة التطبيقات للإضافات غير المتزامنة

تاريخ النشر:

لقد انتهينا من تنفيذ دعم "الوعد" لجميع طرق واجهة برمجة التطبيقات للإضافات غير المتزامنة. وقد كان الهدف من ذلك تحديث طرق واجهة برمجة التطبيقات من خلال تحسين الجوانب الهندسية للتعامل مع العمليات غير المتزامنة. هناك عدد من الطرق (مثل desktopCapture.chooseDesktopMedia()) لا يزال متاحًا لإجراء عمليات معاودة الاتصال فقط لأنّ مساحات العرض الحالية غير متوافقة مع "الوعود". للتوافق مع الأنظمة القديمة، لا تزال عمليات رد الاتصال متاحة. إذا وجدت وعدًا قد فشل، يُرجى الإبلاغ عن خطأ.

إرشادات جديدة للتواصل في الوقت الفعلي

تاريخ النشر:

لقد نشرنا للتو أدلة عن خيارات الوقت الفعلي في الإضافات. توفّر التحديثات في الوقت الفعلي مسار اتصال فوري من خوادمك مباشرةً إلى عمليات تثبيت الإضافات. بالإضافة إلى ذلك، نوفّر إرشادات جديدة لاستخدام chrome.gcm وWeb Push.

إرشادات ونموذج جديدان: اختبار إنهاء مشغّل الخدمات

تاريخ النشر:

لقد نشرنا للتو دليلاً حول كيفية اختبار إنهاء مشغّل الخدمة باستخدام Puppeteer. توضح العينة المرفقة ذلك في الدمى والسيلينيوم.

تم تعديل نموذج المراسلة مع التطبيقات الأصلية.

تاريخ النشر:

لقد نشرنا للتو نموذجًا معدّلاً للمراسلة الأصلية. تسمح واجهة برمجة التطبيقات هذه للإضافة بالبدء والتواصل مع تطبيق آخر. شكرًا للمساهم في GitHub، Shubham-Rasal، على عملك في هذا الشأن.

Chrome 121: خاصية lastAccessed جديدة في علامة التبويب (Tab)

تاريخ النشر:

تمت إضافة موقع جديد باسم lastAccessed إلى العنصر tabs.Tab. تشير هذه السمة إلى آخر مرة تم فيها تفعيل علامة التبويب. تكون القيمة المعروضة بالمللي ثانية منذ تاريخ بدء حساب الفترة.

Chrome 121: تصدر مفاتيح "الخلفية" غير المتوافقة تحذيرًا الآن

تاريخ النشر:

عند التغيير من إصدار Manifest V2 إلى Manifest V3، تم تغيير العناصر الثانوية لمفتاح البيان "background" لكي يتم استبدال النصوص البرمجية الخاصة بالخلفية من قِبل مشغِّلي خدمات الإضافات. في السابق، كانت إضافة مفاتيح الإصدار 2 من Manifest "scripts" أو "page" أو "persistent" إلى المفتاح "background" الخاصة بإضافة Manifest V3 ستؤدي إلى عرض خطأ. يؤدي توفّر هذه المفاتيح الآن إلى ظهور تحذير.

تهدف هذه الخطوة إلى إتاحة استخدام ملف بيان واحد في الإضافات ضمن عدة متصفّحات، وفقًا لاقتراح في مجموعة المنتدى.

Chrome 120: تم خفض الحدّ الأدنى لدقة المنبّه إلى 30 ثانية.

تاريخ النشر:

بدءًا من إصدار Chrome 120، يمكن للإضافات المستنِدة إلى إصدار Manifest V3 استخدام واجهة برمجة التطبيقات chrome.alarms مع تأخيرات أو فترات تبلغ 30 ثانية، بدلاً من أن تتطلب استخدام قيم تبلغ 60 ثانية أو أكثر.

مشاركة المدوّنة: استئناف عملية الانتقال إلى الإصدار 3 من ملف البيان

تاريخ النشر:

تم تعديل المخطط الزمني لإصدار Manifest V2. يمكنك الاطّلاع على مشاركة المدونة لشهر تشرين الثاني (نوفمبر) 2023 لمعرفة التفاصيل.

مشاركة المدونة: تحسينات على إمكانية فلترة المحتوى في الإصدار 3 من ملف Manifest

تاريخ النشر:

يمكنك الاطّلاع على مشاركة المدونة الجديدة لمعرفة كيفية تحسين واجهة برمجة التطبيقات declarativeNetRequest API.

مشاركة المدونة: الميزات الجديدة في Chrome 120 للإضافات

تاريخ النشر:

تم إصدار الإصدار التجريبي من Chrome 120 مؤخرًا. للحصول على ملخص عن التحديثات المهمة ذات الصلة بمطوّري الإضافات، يمكنك قراءة مشاركة المدونة الجديدة: الميزات الجديدة في Chrome 120 للإضافات. يمثّل هذا الإصدار أيضًا إنجازًا رئيسيًا لأنّه يزيل العنصرَين الأخيرَين (userScripts، معالج الملفات في ChromeOS) من قائمة الثغرات المهمة في النظام الأساسي.

PSA: تغيير في طريقة التعامل مع عناوين URL لسياسة الخصوصية في لوحة بيانات المطوّر

تاريخ النشر:

تمت الآن إضافة سياسات الخصوصية في "لوحة بيانات المطوّر" على مستوى العنصر. يتيح لك ذلك تقديم سياسة خصوصية مختلفة لكل عنصر. يمكنك الاطّلاع على المزيد من المعلومات حول هذا التغيير في إعلانات الخدمة العامة.

فيديو: محادثة مع "مات فريسبي"

تاريخ النشر:

لقد نشرنا للتو فيديو جديدًا على قناة Chrome للمطوّرين على YouTube وهو يتحدّث مع خبير التطوير في Google والمؤلف "مات فريسبي". شاهِده هنا.

إرشادات جديدة بشأن اختبار الإضافات

تاريخ النشر:

لقد نشرنا للتو إرشادات جديدة حول كيفية كتابة اختبارات مبرمَجة للإضافات، بما في ذلك كيفية كتابة اختبارات الوحدات وكل من إرشادات عامة وبرنامج تعليمي حول الاختبار الشامل.

مشاركة مدوّنة: التغييرات في إضافات Chrome - تشرين الأول (أكتوبر) 2023

تاريخ النشر:

لقد نشرنا للتو الإصدار الثاني من What’s Gappening in Chrome extensions (ما يحدث في إضافات Chrome). تناقش المشاركة ما كان فريق الإضافات يسعى إلى تحقيقه خلال الأشهر القليلة الماضية، بما في ذلك معالجة المشاكل المتعلّقة باستقرار عمل موظفي الخدمات وتحقيق تقدّم جيد في ما يتعلّق بسد جميع الثغرات في منصات MV3. نشارك أيضًا إصدارات قادمة رائعة لواجهة برمجة التطبيقات مثل Read List API وUser Scripts API.

زيادة حدود مجموعة القواعد الثابتة في واجهة برمجة التطبيقات Delarative Net Request API

تاريخ النشر:

وبالاستناد إلى الملاحظات التي تلقّيناها في مجموعة منتديات إضافات الويب، سنزيد بشكل كبير الحدّ الأقصى المسموح به لمجموعات القواعد الثابتة المفعَّلة من 10 إلى 50. إضافةً إلى ذلك، نعمل على زيادة إجمالي عدد مجموعات القواعد الثابتة المسموح بها من 50 إلى 100. تتوفّر هذه الميزة حاليًا في إصدار Canary.

إرشادات محسَّنة بشأن الرموز البرمجية المستضافة عن بُعد

تاريخ النشر:

أحد متطلبات استخدام الإصدار 3 من ملف البيان هو أنّ الإضافات قد لا تستخدم رمزًا تتم استضافته عن بُعد. على الرغم من أن هذا كان جزءًا من دليل نقل البيانات منذ البداية، إلا أنّنا رأينا أنّ الأمر كان يستحق تحسين الإرشادات المتعلّقة بهذه المشكلة. توفّر هذه الصفحة الآن مزيدًا من المعلومات وتصف ما لا يزال ممكنًا في الإصدار 3 من بيان التطبيق وتقدّم مزيدًا من المعلومات حول استراتيجيات الترقية.

هناك إضافة ذات صلة بعنوان تحديد المشاكل المتعلّقة بانتهاكات "سوق Chrome الإلكتروني" وحلّها. يصف قسم جديد الأسباب الشائعة لرفض الإضافات التي تتضمّن رمزًا مستضافًا عن بُعد.

الإصدار 118 من Chrome: يتم الآن ضبط القيمة التلقائية isUrlFilterCaseSensitive على "خطأ"

تاريخ النشر:

بدءًا من إصدار Chrome 118، تم تغيير السمة isUrlFilterCaseSensitive في واجهة برمجة التطبيقات chrome.declarativeNetRequest إلى القيمة التلقائية "false". إذا أردت الاحتفاظ بالسلوك القديم، يمكنك بشكل صريح ضبط isUrlFilterCaseSensitive على true في قواعد declarativeNetRequest.

ويتبع هذا المناقشات في مجموعة منتدى إضافات الويب. وقد تم بالفعل تنفيذ تغيير مماثل عن طريق متصفحَي Firefox وSafari.

مستندات عن ملفات تعريف الارتباط وواجهات برمجة تطبيقات مساحة تخزين الويب

تاريخ النشر:

نشرنا دليلاً جديدًا حول طريقة عمل ملفات تعريف الارتباط وواجهات برمجة التطبيقات لمساحة تخزين الويب في إضافات Chrome. ويشمل هذا الدليل تفاصيل حول التغييرات التي طرأت على تقسيم ملفات تعريف الارتباط وسعة التخزين في مبادرة حماية الخصوصية، وهو مشروع مستمر لإيقاف ملفات تعريف الارتباط التابعة لجهات خارجية نهائيًا من خلال إنشاء سلسلة من واجهات برمجة التطبيقات الجديدة للأنظمة الأساسية على الويب، بالإضافة إلى تفاصيل حول طريقة عملها في الإضافات.

يمكن الآن البحث عن نماذج الإضافات

تاريخ النشر:

لقد أنشأنا مؤخرًا صفحة تتيح لك البحث في نماذج إضافات Chrome. تتضمن صفحة البحث خيارات متعددة. يتيح لك مربّع البحث البحث عن نص في نماذج العناوين. يمكنك تقييد البحث من خلال واجهة برمجة التطبيقات للإذن أو الإضافة. يتيح لك فلتر إضافي إمكانية حصر البحث في واجهة برمجة التطبيقات أو نماذج وظيفية (حالات الاستخدام).

تم إنشاء هذه الصفحة النموذجية الجديدة بواسطة شويتشو داي، أحد المشاركين في برنامج Summer of Code من Google، والذي ساهم أيضًا في عدة نماذج جديدة. يمكنك الاطّلاع على تجاربهم خلال فصل الصيف الماضي في مشاركتهم على مدوّنتنا.

كما في السابق، لا تزال عيّنات التعليمات البرمجية متاحة على GitHub للنسخ أو التشعّب.

Chrome 118: تغييرات على فتح الملف: عناوين URL للمخطط

تاريخ النشر:

بدءًا من نظام التشغيل Chrome 118، يجب تفعيل الإعداد "السماح بالوصول إلى عناوين URL للملفات" من صفحة chrome://extensions لفتح عناوين URL للمخطط file:// باستخدام واجهات برمجة تطبيقات علامات التبويب أو Windows. يمكنك التأكّد آليًا من إذن الوصول هذا من خلال الاتصال على الرقم chrome.extension.isAllowedFileSchemeAccess(). سبق أن يقيّد متصفّح Firefox عناوين URL للملفات، ويتيح متصفّح Safari هذا التغيير. للمزيد من المعلومات، يُرجى الاطّلاع على المشاركة في "مجموعة Google" للإضافات.

Chrome 117: حماية موسّعة لعناوين URL في عمليات التنقّل من خلال واجهة برمجة التطبيقات للإضافات

تاريخ النشر:

أدى التنقّل السابق من خلال طلبات البيانات من واجهة برمجة التطبيقات للإضافة tabs.update() وtabs.create() وwindows.create() إلى عرض خطأ في بعض عناوين URL التي تبدأ بـ chrome:// . بالإضافة إلى ذلك، كان يتم حظر طلب tabs.update() باستخدام عنوان URL على JavaScript. وفي عام 117، تم توسيع نطاق إجراءات الحماية هذه الخاصة بعناوين URL التي تستخدم JavaScript ليشمل الطريقة tabs.create() وتمت إضافة عدد من عناوين URL الإضافية التي تبدأ بـ chrome:// إلى قائمة عناوين URL المحظورة التي تنطبق على جميع الطرق المذكورة سابقًا.

إرشادات محسَّنة بشأن واجهة برمجة التطبيقات declarativeNetRequest API

تاريخ النشر:

تحظر واجهة برمجة التطبيقات chrome.declarativeNetRequest طلبات الشبكة أو تعدِّلها من خلال تحديد قواعد الإفصاح. ويتيح ذلك للإضافات تعديل طلبات الشبكة بدون اعتراضها وعرض محتواها، ما يوفّر المزيد من الخصوصية للمستخدمين. من الصعب أيضًا استخدامها. مع وضع ذلك في الاعتبار، أعدنا كتابة الإرشادات بطريقة نعتقد أنّها ترسم صورة أوضح عن كيفية تطبيق قواعد البيان. اقرأ القسم الجديد من خلال الرابط أعلاه.

استخدام حسابك على "إحصاءات Google" مع "سوق Chrome الإلكتروني"

تاريخ النشر:

يوفّر "سوق Chrome الإلكتروني" ميزة الدمج مع "إحصاءات Google" التي تتيح لك الاطّلاع على إحصاءات حول بطاقة بياناتك في "سوق Chrome الإلكتروني"، بالإضافة إلى طريقة العرض المتوفّرة في "لوحة بيانات المطوّر". لمزيد من المعلومات، يُرجى الاطّلاع على استخدام حسابك على "إحصاءات Google" مع "سوق Chrome الإلكتروني".

Chrome 115: خطوات "أدوات مطوري البرامج" في النصوص البرمجية للمحتوى تلقائيًا

تاريخ النشر:

أصبحت النصوص البرمجية للمحتوى التي تم إدخالها الآن في قائمة تجاهل "أدوات مطوّري البرامج" تلقائيًا. ولا يؤثر ذلك في نقاط الإيقاف، ولكنّه يعني أنّه سيتم تخطّي النصوص البرمجية للمحتوى أثناء تصحيح الأخطاء وسيتم تجاهل الاستثناءات من هذه النصوص البرمجية. عندما يتم فتح نص برمجي للمحتوى في علامة التبويب المصادر، ينبهك بانر في حال تفعيل هذا النص ويوفّر خيارًا لإزالة النص البرمجي للمحتوى من قائمة التجاهل. لإيقاف هذا السلوك، افتح "أدوات مطوري البرامج" وانتقِل إلى الإعدادات ثم قائمة التجاهل. لمزيد من المعلومات، اطّلِع على الميزات الجديدة في "أدوات مطوري البرامج".

إصدار Chrome 116 التجريبي: أكثر مما يتناسب هنا

تاريخ النشر:

Chrome 116 هو إصدار كبير للإضافات. يمكنك الآن فتح اللوحات الجانبية آليًا. تتيح لك طريقة جديدة معرفة ما إذا كان هناك مستند نشط خارج الشاشة. حصل عاملو الخدمة على تحسينات على الخادم. هناك تحسينات كافية في الإصدار 116، وقد كتبنا مشاركة مدونة لتناولها. يتوفّر Chrome 116 كإصدار تجريبي اعتبارًا من 19 تموز (يوليو).

مشاركة مدوّنة: التغييرات التي تطرأ على إضافات Chrome

تاريخ النشر:

لقد نشرنا للتو نظرة عامة على التغييرات والتحسينات على الإضافات هذا العام. تناقش المشاركة الميزات الجديدة المهمة لهذا العام، بما في ذلك واجهة برمجة التطبيقات Side Panel API وتحسينات مشغّلي الخدمات والمستندات خارج الشاشة. ستحصل أيضًا على نظرة سريعة على ما نعمل عليه في هذا الربع من العام. تتضمّن المقالة المزيد من المعلومات، مع روابط تؤدي إلى الكل.

إرشادات ونموذج جديدان: التعرّف على كيفية استخدام "إحصاءات Google 4" في إضافة Chrome

تاريخ النشر:

نشرنا إرشادات وعيّنات جديدة حول الموقع الجغرافي في "إحصاءات Google" بالإضافة إلى نماذج جديدة:

Chrome 115: تحديد أسباب متعددة في chrome.offscreen.createDocument()

تاريخ النشر:

يمكنك الآن تحديد تعدادات reason متعدّدة عند استدعاء chrome.offscreen.createDocument(). يمكنك استخدام هذا الخيار عند استخدام مستند خارج الشاشة لأغراض متعددة ومختلفة. يستخدم المتصفِّح الأسباب المقدَّمة لتحديد مدة صلاحية المستند خارج الشاشة.

أداة جديدة: أداة اختبار تحديث الإضافات

تاريخ النشر:

لقد أصدرنا للتو أداة اختبار تحديث الإضافات، وهي خادم محلي لتحديث الإضافات يمكن استخدامه لاختبار تحديثات إضافات Chrome أثناء التطوير المحلي، بما في ذلك عمليات منح الأذونات. تعرض الأداة مسار التحديث لدى المستخدم، بما في ذلك إبقاء الإضافة غير مفعّلة إلى أن يمنح المستخدم أي أذونات مطلوبة حديثًا. هذه الأداة مفيدة بشكل خاص لمحاكاة تغييرات الأذونات المطلوبة عند تعديل إضافة من الإصدار 2 إلى إصدار Manifest V3.

Chrome 114: واجهة برمجة تطبيقات جديدة للوحة جانبية

تاريخ النشر:

نقدِّم لك واجهة Side Panel API الجديدة، وهي مساحة تتيح للمستخدمين استخدام الأدوات إلى جانب المحتوى الذي يتصفّحونه. للاطّلاع على مزيد من المعلومات، يُرجى الانتقال إلى مرجع واجهة برمجة التطبيقات الخاصة باللوحة الجانبية. بالإضافة إلى ذلك، أضفنا العديد من نماذج اللوحات الجانبية إلى مستودع نماذج GitHub. سنشارك أيضًا المزيد من المعلومات حول اللوحات الجانبية في مشاركة المدونة الجديدة بعنوان تصميم تجربة مستخدم فائقة باستخدام واجهة برمجة التطبيقات الجديدة للّوحة الجانبية. تمت أيضًا مراجعة سياسة إرشادات الجودة وأفضل الممارسات لتوفير المزيد من الإرشادات حول إنشاء إضافات عالية الجودة للوحات الجانبية.

ملاحظاتك مهمة في تصميم واجهة برمجة التطبيقات هذه. يُرجى مشاركة أفكارك وطلبات الميزات في chromium-groups. يُرجى متابعتنا للاطّلاع على آخر الأخبار بينما نواصل تحسين واجهة برمجة التطبيقات Side Panel API.

نماذج جديدة: WASM في الإضافات

تاريخ النشر:

هناك نموذجان جديدان متاحان يوضحان كيفية استخدام WASM في إحدى الإضافات:

نشكر خاص للمساهم في GitHub @daidr على هذه النماذج.

إرشادات معدّلة لنقل البيانات إلى الإصدار 3 من Manifest V3

تاريخ النشر:

لقد عدّلنا قسم المشاكل المعروفة ضِمن إرشادات نقل البيانات إلى الإصدار 3 من ملف Manifest من خلال إضافة قائمة معدَّلة تتضمّن ثغرات في المنصة الأساسية للإضافات والتي نعتزم إغلاقها قبل الإعلان عن المخطط الزمني الجديد لإصدار Manifest V2.

تسجيل الصوت والفيديو باستخدام إصدار Manifest V3

تاريخ النشر:

لقد نشرنا للتو مقالة جديدة بعنوان تسجيل الصوت وتصوير الشاشة تتناول تسجيل الصوت أو الفيديو من علامة تبويب أو نافذة أو شاشة في الإصدار 3 من بيان التطبيق. توضّح هذه المقالة طرقًا متعدّدة للتسجيل، بما في ذلك واجهة برمجة التطبيقات chrome.tabCapture والوظيفة getDisplayMedia().

الإصدار 114 من Chrome: زيادة الحصة المحلية للتخزين

تاريخ النشر:

لقد تمت زيادة حصة الموقع storage.local إلى 10 ميغابايت تقريبًا. تم الاتفاق على ذلك في مجموعة منتدى إضافات الويب. يؤدي ذلك إلى توافق storage.local مع storage.session الذي تم تغييره في Chrome 112.

الدليل التعليمي والمساعدة الجديدة لمشغّل خدمات الإضافات

تاريخ النشر:

يمثل عاملو الخدمة جزءًا لا يتجزأ من إضافات Chrome. لقد نشرنا للتوّ برنامجًا تعليميًا يشرح أساسيات التسجيل وتصحيح الأخطاء والتفاعل مع "مشغّلي الخدمات". أضفنا أيضًا دليل مشغّلي الخدمات الجديد الذي يوضّح المفاهيم المهمة بمزيد من التفصيل. وسنوسّع هذا القسم خلال الأشهر القادمة.

مزيد من النصائح حول تحديد المشاكل المتعلّقة بانتهاكات السوق الإلكتروني وحلّها

تاريخ النشر:

للمساعدة بشأن النشر في "سوق Chrome الإلكتروني"، أضفنا إرشادات جديدة في قسمَين. إنّ الإرشادات المتعلّقة بالحدّ الأدنى من الوظائف تركّز على توفير مزايا للمستخدمين وإثراء تجربة التصفّح. تتعلق الإرشادات المتعلّقة بإعلانات الشركاء التابعين بجعل المستخدمين على دراية بالإضافات باستخدام روابط أو رموز الشركاء التابعين لتحقيق الربح، ومنحهم قدرًا من التحكّم من خلال اشتراط أن يتّخذوا إجراء قبل إدراجهم.

تعليمات جديدة لأداة تحويل بيان الإضافة

تاريخ النشر:

لقد أعدنا كتابة الملف التمهيدي لتحويل بيان الإضافة لتسهيل رؤية ما عليك فعله بعد تشغيل الأداة. يساعد برنامج تحويل الإضافات على نقل الإضافات المستنِدة إلى إصدار Manifest V2 إلى إصدار Manifest V3. يصف الإصدار الجديد من README الإجراءات التي تنفّذها الأداة باستخدام كلمات تتطابق بشكل وثيق مع الكلمات الواردة في قائمة التحقّق الخاصة بدليل نقل البيانات. لا يفعل المحول كل شيء، لكنه يزيل العديد من المهام التي لا تتطلب طلب الحصول على حكم بشري.

Chrome 113: أسباب جديدة للمستندات التي تظهر خارج الشاشة

تاريخ النشر:

لقد أضفنا نوعَين جديدَين من أنواع الأسباب إلى واجهة برمجة التطبيقات Offscreen Documents API. يمكنك استخدام LOCAL_STORAGE للوصول إلى واجهة برمجة التطبيقات localStorage API على الويب. استخدِم "WORKER" عند إنشاء عمال على الويب.

"إحصاءات Google 4" الآن في "لوحة بيانات المطوّر"

تاريخ النشر:

أصبحت "لوحة بيانات المطوّر" في "سوق Chrome الإلكتروني" متوافقة الآن مع "إحصاءات Google 4". لقد بسّطنا عملية إعداد "إحصاءات Google" وجعلنا إدارة أذونات الوصول للناشرين الجماعيين أكثر وضوحًا. إذا سبق لك استخدام Google Universal Analytics لتتبُّع نشاط بطاقة بيانات المتجر، عليك اتّخاذ إجراء بحلول 1 تموز (يوليو) 2023 لضمان مواصلة تلقّي بيانات عن بطاقة بيانات المتجر. ولمزيد من المعلومات، يُرجى الاطّلاع على المشاركة عن "مجموعة Google" الخاصة بإضافات Chromium.

إتاحة واجهة برمجة التطبيقات File Handling API في ChromeOS

تاريخ النشر:

تتوفّر واجهة برمجة التطبيقات File Handler API للتجريب على نظام التشغيل ChromeOS في إصدار Canary للإصدارَين 112 و113. يسمح هذا الإعداد للإضافات على نظام التشغيل ChromeOS بفتح الملفات التي تتضمّن أنواع MIME محدّدة وامتدادات ملفات. لتنفيذ معالجة الملفات، أضِف مجموعة من القواعد إلى manifest.json. تعمل هذه الميزة بالطريقة نفسها التي تعمل بها تطبيقات الويب التقدّمية. ولمزيد من المعلومات، يمكنك الاطّلاع على المقالة في مكان آخر على هذا الموقع الإلكتروني.

لتفعيل معالجة الملفات:

  • بدءًا من الإصدار 112، يمكنك تشغيل متصفِّح Chrome باستخدام العلامة --enable-features=ExtensionWebFileHandlers بدايةً من الإصدار 112.
  • بدءًا من الإصدار 113، الصق os://flags/#extension-web-file-handlers في المربّع المتعدد الاستخدامات في Chrome واختَر "مفعّلة" من القائمة المنسدلة.

نأمل إطلاق هذه الميزة في الإصدار 115 من Chrome في أواخر حزيران (يونيو). يُرجى الاطّلاع على هذه الصفحة لمعرفة آخر الأخبار.

نماذج جديدة: نماذج البيانات الديناميكية والإدخال الآلي

تاريخ النشر:

لقد أنشأنا نموذجًا جديدًا لواجهة برمجة التطبيقات chrome.scripting. وتوضح هذه السياسة البيانات الديناميكية، حيث يتم تسجيل نص برمجي للمحتوى في وقت التشغيل، والإدخال الآلي، حيث يتم تنفيذ نص برمجي في علامة تبويب مفتوحة من قبل.

نماذج جديدة: حالات استخدام بيان صافي للطلبات

تاريخ النشر:

تتوفّر ثلاث نماذج جديدة توضّح Declarative Net Request API. يوضح كل اختبار تنفيذ حالة استخدام واحدة. الطريقة الأولى توضح كيفية حظر ملفات تعريف الارتباط. يوضح العنوانان المتبقيان الحظر وإعادة توجيه عناوين URL.

Chrome 112: زيادة حصة التخزين.الجلسة

تاريخ النشر:

بدايةً من الإصدار 112 من Chrome، تمت زيادة الحصة المخصصة للسمة storage.session إلى 10 ميغابايت تقريبًا. تمت الموافقة على ذلك في مجموعة منتدى إضافات الويب: https://github.com/w3c/webextensions/issues/350

Chrome 109: المستندات خارج الشاشة

تاريخ النشر:

تتوفّر المستندات خارج الشاشة الآن في الإضافات المستنِدة إلى إصدار Manifest V3. وتساعد هذه الميزات في الانتقال من صفحات الخلفية إلى مشغّلي خدمات الإضافات من خلال توفير الدعم للميزات وواجهات برمجة التطبيقات ذات الصلة بنموذج العناصر في المستند (DOM). لمزيد من المعلومات، يُرجى قراءة مشاركة المدونة.

Chrome 110: هل إضافة مفعَّلة

تاريخ النشر:

تتحقّق طريقة chrome.action.isEnabled() آليًا مما إذا تم تفعيل الإضافة لعلامة تبويب محدَّدة. ينقذك هذا من الحفاظ على الحالة المفعَّلة لعلامات التبويب. تأخذ هذه الطريقة الجديدة رقم تعريف علامة تبويب ومرجعًا إلى معاودة الاتصال وتعرض قيمة منطقية. هناك قيد واحد: دائمًا ما تعرض علامات التبويب التي تم إنشاؤها باستخدام chrome.declarativeContent القيمة false.

(حصلت مساحة الاسم chrome.action مؤخرًا على طرق جديدة للتحكّم في مظهر شارات الإضافات. لمزيد من المعلومات، اطّلِع على ضبط ألوان الشارة).

Chrome 110: تغيير مهلة عدم نشاط مشغّل الخدمات

تاريخ النشر:

في السابق، كان يتم إيقاف تشغيل مشغّل خدمات التمديدات بشكل متكرر عند مرور خمس دقائق. لقد غيّرنا هذا السلوك ليصبح مشابهًا إلى حدّ كبير لعمر عامل الخدمة على الويب. سيتم إيقاف تشغيل مشغّل خدمات الإضافات بعد ثلاثين ثانية من عدم النشاط، أو إذا استغرقت معالجة نشاط واحد أكثر من 5 دقائق. لمزيد من المعلومات، يُرجى الاطّلاع على فترات تمديد مهلة العاملين في الخدمات.

مشاركة: الإيقاف التدريجي للإصدار 2 من ملف البيان

تاريخ النشر:

إنّ المخططات الزمنية لإصدار Manifest V2 قيد المراجعة حاليًا، وسيتم تأجيل التجارب التي تم تحديد موعد لها في أوائل عام 2023. لمزيد من المعلومات، يمكنك الاطّلاع على التعديل في مجموعة Google الخاصة بإضافات chrome.

Chrome 110: ضبط ألوان الشارة

تاريخ النشر:

تتضمن مساحة الاسم chrome.action طريقتَين جديدتَين لمنحك إمكانية التحكّم بشكل أكبر في شارات إضافة شكل الظهور. تتيح الطريقتان setBadgeTextColor() وgetBadgeTextColor() للإضافة تغيير لون نص الشارة والاستعلام عن رمز شريط الأدوات. وعند استخدامها مع setBadgeBackgroundColor وgetBadgeBackgroundColor، تتيح لك هذه الطرق الجديدة تعزيز اتساق التصميم والعلامة التجارية.

مشاركة المدوّنة: مزيد من التفاصيل حول عملية الانتقال إلى إصدار Manifest V3

تاريخ النشر:

لقد وضّحنا المخطط الزمني لإيقاف إصدار Manifest V2 نهائيًا. وتم أيضًا تعديل المخطط الزمني للإصدار 2 من Manifest V2 ليعرض هذه المعلومات.

تحديث "مستندات Google": المشاكل المعروفة عند نقل البيانات إلى إصدار Manifest V3

تاريخ النشر:

لقد وضعنا قائمة بالميزات الرئيسية التي يتم تطويرها حاليًا وتفتح الأخطاء فيها. ونهدف من خلال هذه الصفحة إلى مساعدة المطوّرين على فهم الوضع الحالي للمنصة بشكلٍ أفضل والميزات التي يمكنهم استهدافها أثناء الاستعداد للمستقبل.

سوق Chrome الإلكتروني: تمت إزالة تحميل صورة "مربّع ترويجي كبير"

تاريخ النشر:

أزال سوق Chrome الإلكتروني واجهة مستخدم تحميل "المربّع الترويجي الكبير" من علامة تبويب "بطاقة بيانات المتجر" للسلع في لوحة بيانات المطوّر. لا يؤثّر هذا التغيير في تجربة المستخدم النهائي، لأنّه لم يتم استخدام هذه الصور في واجهة المستخدِم الخاصة بالمستهلك. يمكنك الاطّلاع على مشاركة إضافات chrome هذه للحصول على تفاصيل إضافية.

Chrome 106: السماح للصفحات الموجودة على عناوين URL في file:// بالوصول إلى الموارد التي يمكن الوصول إليها على الويب

تاريخ النشر:

ومن المفترض أيضًا أن تتمكن المصادر المعتمة، مثل إطارات iframe في وضع الحماية والاستيراد الديناميكي، من الوصول إلى الموارد التي يمكن الوصول إليها على الويب وفقًا للرابط crbug.com/1219825#c11.

Chrome 106: تم إصلاح خطأ يسمح بالوسيطات النهائية غير الصحيحة في بعض دوال واجهة برمجة التطبيقات غير المتزامنة.

تاريخ النشر:

في السابق، كان بإمكان واجهات برمجة التطبيقات غير المتزامنة في Manifest V3 توفير وسيطة أخيرة غير صالحة ولم يكُن Chrome يعرض الخطأ. من خلال هذا الإصلاح، سيخطئ Chrome الآن بشكل صحيح ويبلغ عن عدم وجود توقيع مطابق. ننصح المطوِّرين بالتحقّق من الإضافات في إصدار Canary بحثًا عن أي أخطاء في حال استخدامهم لتوقيع غير صحيح عن طريق الخطأ لطلب بيانات من واجهة برمجة تطبيقات يتعطّل بسبب إصلاح الخطأ هذا.

مشاركة المدوّنة: تجديد إحصاءات "سوق Chrome الإلكتروني"

تاريخ النشر:

يقدّم "سوق Chrome الإلكتروني" تجربة مجدَّدة لتحليلات العناصر من أجل لوحة بيانات المطوّر في "سوق Chrome الإلكتروني". من السهل فهم لوحة المعلومات الجديدة بنظرة سريعة ودمج المعلومات الأكثر فائدة في البداية. يُرجى قراءة مشاركة المدونة للاطّلاع على مزيد من المعلومات.

Chrome 105: وعود بواجهة Identity API

تاريخ النشر:

توفِّر الدوالّ في Identity API الآن الطلبات المستندة إلى الوعود. يأتي ذلك مع تغيير بسيط في واجهة identity.getAuthToken()، حيث سيتضمّن الرجوع غير المتزامن الذي يتم ضبطه على طلب يستند إلى الوعد "رمز مميّز" و "grantedScopes" كمَعلمتَين في عنصر واحد (على عكس إصدار معاودة الاتصال الذي يتلقّاه كوسيطات منفصلة لمعاودة الاتصال).

Chrome 104: واجهة برمجة تطبيقات جديدة للرموز المفضّلة في إصدار Manifest V3

تاريخ النشر:

بإمكان الإضافات المستنِدة إلى إصدار Manifest V3 الآن الوصول إلى الرموز المفضّلة باستخدام نمط عنوان URL جديد: chrome-extension://<id>/_favicon/، حيث يشير إلى رقم تعريف الإضافة. يحل ذلك محل واجهة برمجة التطبيقات chrome://favicons في الإصدار 2 من Manifest V2. يمكنك الاطّلاع على مستندات Favicon API للحصول على مزيد من المعلومات.

تعديل على "مستندات Google": الإفصاح عن جهة تمويل الإعلان/الجهة غير التجارية

تاريخ النشر:

تمت إضافة تعريف المطوّر كتاجر/غير تاجر الذي يطلب من المطوّرين الإفصاح بشكل دقيق عن حالتهم كتاجر/غير تاجر.

Chrome 103: يتطلب Wasm في إصدار Manifest V3 من Wasm-unsafe-eval

تاريخ النشر:

لم يعد متصفِّح Chrome يمنح الإضافات script-src: wasm-unsafe-eval تلقائيًا. على الإضافات التي تستخدم WebAssembly أن تضيف الآن هذا التوجيه والقيمة بشكل صريح إلى extension_pages في نماذج البيانات content_security_policy الخاصة بها.

Chrome 103: تسري تغييرات اختصارات الإصدار MV3 على الفور

تاريخ النشر:

عند تغيير اختصار لوحة المفاتيح "لإضافة Manifest V3" في "chrome://extensions/shortcuts"، يتم الآن تطبيق التحديثات على الفور. في السابق، كان يجب إعادة تحميل الإضافة قبل أن يدخل التغيير حيز التنفيذ.

Chrome 102: النصوص البرمجية للمحتوى الديناميكي في العالم الرئيسي

تاريخ النشر:

يمكن الآن للنصوص البرمجية للمحتوى المسجّل ديناميكيًا أن تحدّد العالم الذي سيتم إدخال مواد العرض فيه. راجِع scripting.registerContentScripts() للاطّلاع على التفاصيل.

Chrome 102: حقل البيان الجديد "optional_host_permissions"

تاريخ النشر:

يمكن للإضافات المستنِدة إلى إصدار Manifest V3 الآن تحديد مفتاح optional_host_permissions في ملفManifest.json. ويتيح ذلك للإضافات المستنِدة إلى إصدار Manifest V3 تحديد أنماط مطابقة اختيارية للمضيفين مثلما يمكن للإضافات المستنِدة إلى إصدار Manifest V2 استخدام مفتاح optional_permissions.

Chrome 102: الخاصية injectImmediately في Scripting.executeScript() .

تاريخ النشر:

تقبل chrome.scripting.executeScript() الآن سمة injectImmediately الاختيارية في الوسيطة injection الخاصة بها. وفي حال استخدام هذه العلامة وضبطها على "صحيح"، سيتم إدخال النص البرمجي في الهدف في أقرب وقت ممكن، بدلاً من انتظار document_idle. يُرجى العِلم أنّ هذا لا يضمن إدخال النص البرمجي قبل تحميل الصفحة لأنّ الصفحة تستمر في التحميل أثناء إجراء طلب البيانات من واجهة برمجة التطبيقات.

Chrome 102: إتاحة واجهة برمجة التطبيقات للمربّع المتعدد الاستخدامات في إصدار Manifest V3

تاريخ النشر:

يمكن الآن استخدام Shared API في الإضافات المستندة إلى عاملي الخدمة. في السابق، كانت بعض طرق واجهة برمجة التطبيقات هذه تفرض الاستدعاء بسبب التبعيات الداخلية على إمكانات DOM.

Chrome 102: مسموح باستخدام Wam-unsafe-eval في Manifest V3 CSP

تاريخ النشر:

يمكن أن تتضمّن الإضافات المستنِدة إلى إصدار Manifest V3 الآن wasm-unsafe-eval في بيان content_security_policy الخاص بها. من خلال هذا التغيير، يمكن للإضافات المستنِدة إلى إصدار Manifest V3 استخدام WebAssembly.

Chrome 102: واجهة برمجة تطبيقات جديدة Storage.session

تاريخ النشر:

يمكن الآن استخدام الإضافات المستنِدة إلى إصدار Manifest V3 في مساحة تخزين الذاكرة storage.session .

تحديث "مستندات Google": اكتشاف عناصر "سوق Chrome الإلكتروني"

تاريخ النشر:

يوفّر قسم الاكتشاف في "سوق Chrome الإلكتروني" نظرة عامة حول كيفية عثور المستخدمين على العناصر في "سوق Chrome الإلكتروني" وطريقة اختيار المحرّرين للعناصر التي تريد إبرازها.

Chrome 101: شروط نطاق declarativeNetRequest المحسّنة

تاريخ النشر:

تم تعديل شروط قاعدة declarativeNetRequest للسماح للإضافات باستهداف الطلبات بشكل أفضل استنادًا إلى نطاقَي "الطلب" و"المُبدئ" للطلب. وسمات الشرط ذات الصلة هي initiatorDomains وexcludedInitiatorDomains وrequestDomains وexcludedRequestDomains. يمكنك الاطّلاع أيضًا على سلسلة محادثات إضافات Chromium هذه.

Chrome 100: تم حل المشكلة المتعلقة بـ scripting.executeScript() في علامات التبويب التي تم إنشاؤها حديثًا.

تم إصلاح مشكلة طويلة الأمد تسبّبت في تعذُّر استدعاء scripting.executeScript() على علامة تبويب أو نافذة تم إنشاؤها حديثًا.

Chrome 100: منفذ المراسلة الأصلي يبقي عامل الخدمة على قيد الحياة

تاريخ النشر:

ومن المفترض أن يؤدي الاتصال بمضيف المراسلة مع التطبيقات الأصلية باستخدام chrome.runtime.connectNative() في مشغّل خدمات الإضافة إلى إبقاء عامل الخدمة نشطًا ما دام المنفذ مفتوحًا.

Chrome 100: يتوافق مربّع.setDefaultمُقترَحion() مع الوعود وطلبات معاودة الاتصال.

تاريخ النشر:

تعرض الطريقة omnibox.setDefaultSuggestion() الآن وعودًا أو تقبل معاودة الاتصال للسماح للمطوّرين بتحديد الوقت المناسب لضبط الاقتراح.

Chrome 100: دعم i18n.getMessage() في مشغّلي خدمات الإضافات

تاريخ النشر:

أصبحت واجهة برمجة التطبيقات chrome.i18n.getMessage() API متوافقة الآن في سياقات مشغّلي خدمات الإضافات.

Chrome 99: Match_origin_as_fallback في إصدار Canary

تاريخ النشر:

يمكن للنصوص البرمجية للمحتوى الآن تحديد المفتاح match_origin_as_fallback لإدخالها في الإطارات ذات الصلة بإطار مطابق، بما في ذلك الإطارات التي تتضمّن عناوين URL about: وdata: وblob: وfilesystem:. يمكنك الاطّلاع على مستندات النصوص البرمجية للمحتوى للحصول على التفاصيل.

Chrome 99: دعم مشغّل خدمات الإضافات للملف: المخططات في إصدار Canary

تاريخ النشر:

أصبح بإمكان إضافات Manifest V2 وManifest V3 المستندة إلى عاملَي الخدمة استخدام Fetch API لطلب عناوين URL لنظام file:. لا يزال الوصول إلى عناوين URL لنظام file: يتطلّب من المستخدم تفعيل خيار "السماح بالوصول إلى عناوين URL للملفات" للإضافة في صفحة chrome://extensions.

Chrome 99: وعد بتوفير الدعم لواجهات برمجة تطبيقات المراسلة في إصدار Canary

تاريخ النشر:

وعدنا بمنح إمكانية الوصول إلى حزمة tabs.sendMessage وruntime.sendMessage وruntime.sendNativeMessage للإضافات التي تم إنشاؤها للإصدار 3 من ملف البيان.

تحديث "مستندات Google": مستندات المراجعة في "سوق Chrome الإلكتروني"

تاريخ النشر:

تمت إضافة صفحة مرجعية جديدة توفّر نظرة عامة على عملية المراجعة في "سوق Chrome الإلكتروني" وتوضّح كيفية تنفيذ سياسات المطوّرين.

Chrome 98: يقبل Scripting.executeScript() وscripting.insertCSS() ملفات متعددة.

تاريخ النشر:

تقبل الآن طريقتا executeScript() وinsertCSS() الخاصة بـ Scripting API عدة ملفات. كانت هذه الطرق تتطلب في السابق صفيفًا مع إدخال ملف واحد.

تعديل على "مستندات Google": مراجعة التعديلات المتعلقة بتحديد مشاكل المخالفات وحلّها

تاريخ النشر:

تم تعديل صفحة تحديد المشاكل المتعلّقة بانتهاكات "سوق Chrome الإلكتروني" وحلّها لتزويد المطوّرين بإرشادات أكثر تفصيلاً عن الأسباب الشائعة للرفض.

Chrome 96: توفير 27 واجهة برمجة تطبيقات إضافية في المستقبل

تاريخ النشر:

يتضمّن هذا الإصدار تعديلات على وعود أكبر بكثير من أي إصدار سابق. تشمل التحديثات كلاً من واجهات برمجة التطبيقات للإضافات العامة والخاصة بنظام التشغيل ChromeOS. وسِّع الأقسام التالية للاطّلاع على التفاصيل.

واجهات برمجة التطبيقات للإضافات

يتوافق عدد من واجهات برمجة التطبيقات الآن مع الوعود في الإصدار 3 من Manifest V3.

أيضًا، أصبحت واجهات برمجة التطبيقات التي تستخدم النموذج الأولي لـ ChromeSetting تدعم الآن الوعود. تتأثر واجهات برمجة التطبيقات التالية بهذا التغيير.

واجهات برمجة التطبيقات لنظام التشغيل ChromeOS

Chrome 96: النصوص البرمجية للمحتوى الديناميكي

تاريخ النشر:

تتيح واجهة برمجة التطبيقات chrome.scripting API الآن إمكانية التسجيل، وتعديلها، وإلغاء التسجيل، والحصول على قائمة من النصوص البرمجية للمحتوى في وقت التشغيل. في السابق، كان من الممكن الإعلان بشكل ثابت عن النصوص البرمجية للمحتوى في ملف manifest.json الخاص بالإضافة، أو تضمينها آليًا في وقت التشغيل باستخدام chrome.scripting.executeScript().

تحديث "مستندات Google": المخطط الزمني لإصدار Manifest V2

تاريخ النشر:

تم الإعلان في مشاركة المدونة هذه عن المخطط الزمني للإصدار Manifest V2 إلى V3، وتم نشر صفحة مخطط زمني أكثر تفصيلاً.

Chrome 96: إذن declarativeNetRequestWithHostAccess

تاريخ النشر:

يسمح إذن declarativeNetRequestWithHostAccess الجديد للإضافات باستخدام واجهة برمجة التطبيقات chrome.declarativeNetRequest على المواقع الإلكترونية التي تمتلك الإضافة أذونات مضيف لها. يؤدي ذلك أيضًا إلى تفعيل الإضافات المستنِدة إلى إصدار Manifest V2 الحالية التي تستخدم أذونات webRequest وwebRequestBlocking والمضيف الخاص بالموقع الإلكتروني لنقل البيانات إلى واجهة chrome.declarativeNetRequest API بدون أن تطلب من المستخدم الموافقة على الأذونات الجديدة.

Chrome 95: إدخال النصوص البرمجية مباشرةً في الصفحات

تاريخ النشر:

يمكن الآن لطريقة chrome.scripting API في executeScript() إدخال نصوص برمجية مباشرةً في العالم الرئيسي للصفحة. في السابق، كان من الممكن إدخال الإضافات مباشرة في عالم الإضافات المعزولة فقط. لمزيد من المعلومات حول العوالم المعزولة، راجِع مستندات النصوص البرمجية للمحتوى.

Chrome 95: وعد باعتماد واجهة برمجة التطبيقات Storage API

تاريخ النشر:

إنّ الطرق المتاحة في إصدار Manifest V3 من واجهة برمجة التطبيقات chrome.storage تعرض الآن الوعود.

تعديل على السياسة: فرض ميزة "التحقّق بخطوتين"

تاريخ النشر:

تم تعديل مشاركة المدونة الخاصة بتعديل السياسة التي تم نشرها في 29 حزيران (يونيو) 2021 لتصحيح المخطط الزمني لنشر ميزة "التحقّق بخطوتين".

Chrome 94: التغييرات التعريفية في مجموعة القواعد الثابتة للطلب

تاريخ النشر:

تتيح chrome.declarativeNetRequest الآن تحديد ما يصل إلى 50 مجموعة قواعد ثابتة (MAX_NUMBER_OF_STATIC_RULESETS) وتفعيل ما يصل إلى 10 مجموعات (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) في آن واحد.

Chrome 93: إتاحة العزل من مصادر متعددة

تاريخ النشر:

يمكن الآن لكل من الإضافتَين Manifest V2 وManifest V3 تفعيل عزل المحتوى من جميع المصادر. تحدِّد هذه الميزة الموارد المتعدّدة المصادر التي يمكنها تحميل صفحات الإضافة وتتيح استخدام ميزات النظام الأساسي للويب المنخفضة المستوى، مثل SharedArrayBuffer. يجب الموافقة على استخدام الإصدار 95 من Chrome.

تعديل على السياسة: تم تعديل سياسات برنامج المطوّرين

تاريخ النشر:

تم تعديل سياسات المطوّرين في "سوق Chrome الإلكتروني" من خلال إضافة توضيحات إلى أساليب التثبيت المخادعة والمحتوى غير المرغوب فيه والمحتوى المتكرّر. يشمل هذا التحديث أيضًا متطلّبًا جديدًا من ميزة "التحقّق بخطوتين" للنشر في "سوق Chrome الإلكتروني". يُرجى قراءة مشاركة المدونة للاطّلاع على مزيد من المعلومات.

مشاركة المدوّنة: إجراءات الإضافات في الإصدار 3 من ملف البيان

تاريخ النشر:

تضمّنت إضافات Chrome واجهات برمجة تطبيقات chrome.browserAction وchrome.pageActions لسنوات، ولكن حلّ إصدار Manifest V3 محل إصدارَي كل منهما بواجهة برمجة تطبيقات chrome.actions عامة. سنتعرّف في هذه المشاركة على سجلّ واجهات برمجة التطبيقات هذه والتغييرات التي تم إجراؤها في الإصدار 3 من Manifest V3. قراءة المشاركة

مشاركة المدوّنة: لمحة عن chrome.scripting

تاريخ النشر:

chrome.scripting API هي واجهة برمجة تطبيقات Manifest V3 جديدة تركِّز على البرمجة النصية. في هذه المشاركة، نتعمق في دوافع هذا التغيير ونلقي نظرة عن كثب على الإمكانات الجديدة. قراءة المشاركة

Chrome 92: دعم مشغّل خدمات الوحدات

تاريخ النشر:

يدعم Chrome الآن وحدات JavaScript في مشغِّلي الخدمات. لتحديد وحدة في البيان:

"background": {
  "service_worker": "script.js",
  "type": "module"
}

يؤدي ذلك إلى تحميل النص البرمجي للعامل كوحدة ES، ما يتيح لك استخدام الكلمة الرئيسية import في النص البرمجي للعامل لاستيراد وحدات أخرى.

Chrome 91: chrome.action.getUserSettings()

تاريخ النشر:

تتيح الطريقة chrome.action.getUserSettings() الجديدة للإضافات تحديد ما إذا كان المستخدم قد ثبَّت الإضافة في شريط الأدوات الرئيسي.

Chrome 90: chrome.scripting.removeCSS()

تاريخ النشر:

تتيح الطريقة chrome.scripting.removeCSS() الجديدة للإضافات إزالة CSS التي تم إدراجها سابقًا من خلال chrome.scripting.insertCSS(). إنه يحل محل chrome.tabs.removeCSS().

Chrome 90: عرض الوعود من Scripting.executeScript()

تاريخ النشر:

تتيح أداة chrome.scripting.executeScript() الآن إعادة تنفيذ الوعود. إذا كانت القيمة الناتجة لتنفيذ النص البرمجي هي وعودًا، سينتظر Chrome حتى يستقر الوعد ويعرض القيمة الناتجة.

Chrome 90: chrome.scripting.executeScript() تشمل windowId

تاريخ النشر:

تشمل النتائج التي تم إرجاعها من chrome.scripting.executeScript() الآن frameId. تشير السمة frameId إلى الإطار الذي تأتي منه النتيجة، ما يسمح للإضافات بربط النتائج بسهولة بإطارات فردية عند إدخالها في إطارات متعددة.

Chrome 89: واجهة برمجة تطبيقات جديدة لإدارة مجموعات علامات التبويب

تاريخ النشر:

تتيح واجهة برمجة التطبيقات chrome.tabGroups الجديدة والإمكانات الجديدة في chrome.tabs للإضافات قراءة مجموعات علامات التبويب ومعالجتها. يجب استخدام إصدار Manifest V3.

Chrome 89: أذونات قابلة للتخصيص للموارد التي يمكن الوصول إليها على الويب

تاريخ النشر:

تم تغيير تعريفات الموارد التي يمكن الوصول إليها على الويب في ملف البيان V3 للسماح للإضافات بحظر الوصول إلى الموارد بناءً على أصل مقدِّم الطلب أو رقم تعريف الإضافة.

مشاركة المدونة: أداة تحويل بيان الإضافة

تاريخ النشر:

يوفّر فريق "إضافات Chrome" "محوّل بيان الإضافات" مفتوح المصدر، وهي أداة Python تنفّذ تلقائيًا بعض الجوانب الميكانيكية لتحويل الإضافات إلى إصدار Manifest V3. يمكنك الاطّلاع على مشاركة مدونة الإعلان والحصول عليها من GitHub.

Chrome 88: الإصدار 3 من Manifest V3 المتوفّر للجميع

تاريخ النشر:

إصدار Manifest V3 هو تحديث رئيسي على النظام الأساسي للإضافات. يُرجى الاطّلاع على نظرة عامة على إصدار Manifest V3 للحصول على ملخّص عن الميزات الجديدة التي تم تغييرها. قد تستمر الإضافات في استخدام إصدار Manifest V2 في الوقت الحالي، ولكن سيتم إيقاف هذه الميزة في المستقبل القريب. وننصحك بشدة باستخدام الإصدار 3 من Manifest V3 مع أي إضافات جديدة، والبدء بنقل الإضافات الحالية إلى إصدار Manifest V3 في أقرب وقت ممكن.