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

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

الإصدار 139 من Chrome: إزالة العلامتَين --extensions-on-chrome-urls و--disable-extensions-except في إصدارات Chrome ذات العلامة التجارية

تاريخ النشر:

اعتبارًا من الإصدار 139 من Chrome، ستتم إزالة علامتَي سطر الأوامر --extensions-on-chrome-urls و--disable-extensions-except في إصدارات Chrome الرسمية ذات العلامة التجارية. يمكنك الاطّلاع على مزيد من المعلومات حول القائمة البريدية.

‫Chrome 138: تغييرات في صفحة "علامة تبويب جديدة"

تاريخ النشر:

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

مشاركة المدوّنة: تعديل الإضافات قبل التغييرات القادمة على الإشارات المرجعية

تاريخ النشر:

نجري بعض التغييرات على مزامنة الإشارات المرجعية التي قد تؤثر في الإضافة. يمكنك الاطّلاع على مزيد من المعلومات في مشاركة المدونة.

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

تاريخ النشر:

لقد عملنا بجدّ خلال الفترة الماضية، حيث أطلقنا مؤتمر Google I/O وعدة ميزات جديدة في Chrome و"سوق Chrome الإلكتروني". يمكنك الاطّلاع على آخر الأخبار في ما الجديد في "إضافات Chrome"، يونيو 2025.

فيديو: لعبة Whack-a-Mole في المتصفّح - هل هذا ممكن؟

تاريخ النشر:

يمكنك الاطّلاع على كيفية إنشاء لعبة في المتصفّح من خلال أحدث فيديو نشرناه.

فيديو: شرح قائمة الإضافات الجديدة في Chrome

تاريخ النشر:

يمكنك الاطّلاع على قائمة الإضافات التجريبية الجديدة في أحدث فيديو لدينا، شرح قائمة الإضافات الجديدة في Chrome .

فيديو: الإضافات رائعة!

تاريخ النشر:

يمكنك التعرّف على كيفية بدء تطوير الإضافات في الحلقة 1 من "الإضافات رائعة"، والتعرّف على مدى مرونة تخصيص Chrome في الحلقة 2.

الإصدار 135 من Chrome: واجهة برمجة تطبيقات جديدة userScripts.execute()

تاريخ النشر:

بدءًا من الإصدار 135 من Chrome، يتوفّر أسلوب userScripts.execute() جديد في واجهة برمجة التطبيقات chrome.userScripts. يمكنك استخدام هذا الخيار لإدراج نص برمجي للمستخدم مرة واحدة في وقت عشوائي بدلاً من الحاجة إلى تسجيله بشكل دائم.

‫Chrome 132: عرض مساحة تخزين الإضافة وتعديلها في "أدوات مطوّري البرامج"

تاريخ النشر:

بدءًا من الإصدار 132 من Chrome، يمكنك عرض البيانات المخزَّنة باستخدام واجهة برمجة التطبيقات chrome.storage وتعديلها في "أدوات مطوّري البرامج". لمزيد من المعلومات، اطّلِع على صفحة عرض مساحة تخزين الإضافات وتعديلها الجديدة في مستندات "أدوات مطوّري البرامج".

مشاركة مدوّنة: قائمة الإضافات الجديدة

تاريخ النشر:

في مؤتمر Google I/O لعام 2024، شاركنا بعض التصاميم الأولية للتغييرات القادمة على قائمة الإضافات، والتي تمنح المستخدمين المزيد من التحكّم في المواقع الإلكترونية التي يمكن للإضافات الوصول إليها. سنبدأ قريبًا باختبار هذه التغييرات مع نسبة صغيرة من المستخدمين في قناة Canary، ونأمل أن نطرحها على نطاق أوسع في المستقبل.

سنقدّم أيضًا واجهة برمجة التطبيقات chrome.permissions.addHostAccessRequest().

يمكنك الاطّلاع على مزيد من المعلومات في مشاركة المدونة.

‫Chrome 132: سمة جديدة مجمدة في Tabs API

تاريخ النشر:

بدءًا من الإصدار 132 من Chrome، تشير السمة frozen في Tabs API إلى ما إذا كان المتصفّح قد جمّد علامة تبويب. سيتم وضع الرسائل المرسَلة إلى علامات التبويب المجمّدة في قائمة الانتظار والتعامل معها عند إلغاء تجميد علامة التبويب.

‫Prompt API في إضافات Chrome

تاريخ النشر:

تتوفّر الآن Prompt API للإضافات في مرحلة تجربة وتقييم، ما يتيح لك إنشاء إضافات على Chrome تستخدم Gemini Nano، وهو نموذج اللغة الأكثر كفاءة لدينا، في المتصفّح.

يمكنك الانضمام إلى مرحلة التجربة والتقييم لواجهة برمجة التطبيقات Prompt API التي يتم إجراؤها في الإصدارات من 131 إلى 136 من Chrome ومشاركة ملاحظاتك. يمكن أن تؤثّر ملاحظاتك بشكل مباشر في طريقة إنشاء الإصدارات المستقبلية من واجهة برمجة التطبيقات هذه وجميع واجهات برمجة التطبيقات المضمّنة المستندة إلى الذكاء الاصطناعي وتنفيذها.

مشاركة مدوّنة: آخر الأخبار حول "إضافات Chrome"، أكتوبر 2024

تاريخ النشر:

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

الانضمام إلى تحدّي "الذكاء الاصطناعي المدمج"

تاريخ النشر:

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

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

‫Chrome 130: action.onUserSettingsChanged

تاريخ النشر:

اعتبارًا من الإصدار 130 من Chrome، سيتوفّر الحدث action.onUserSettingsChanged. يأتي ذلك بعد اقتراح في "مجموعة WebExtensions". نشكر Microsoft على مساهمتها في Chromium.

‫130: StorageArea.getKeys() في Chrome

تاريخ النشر:

بدءًا من الإصدار 130 من Chrome، تتوفّر الطريقة getKeys() على واجهة StorageArea التي تستخدمها واجهة برمجة التطبيقات chrome.storage. يأتي ذلك بعد اقتراح في "مجموعة WebExtensions".

‫128: مطابقة عناوين الاستجابة في Declarative Net Request

تاريخ النشر:

بدءًا من الإصدار 128 من Chrome، سنضيف إمكانية مطابقة عناوين الاستجابة في واجهة برمجة التطبيقات Declarative Net Request. كان هذا الطلب شائعًا، لا سيما لمطابقة عنوان Content-Type، وصمّمنا واجهة برمجة تطبيقات مناسبة مع مجموعة WebExtensions Community Group.

لقد عدّلنا مرجع واجهة برمجة التطبيقات ليشمل الحقلَين الجديدَين responseHeaders وexcludedResponseHeaders. يمكنك استخدامها للتحقّق من وجود عنوان معيّن وقيمته.

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

فيديو: ما هي النصوص البرمجية للمحتوى؟

تاريخ النشر:

تعرَّف على نصوص المحتوى البرمجية في "إضافات Chrome"، بما في ذلك كيفية تسجيل CSS وJavaScript لتشغيلهما على صفحة معيّنة. مشاهدة الفيديو الكامل

تعديلات مهمة على السياسات

تاريخ النشر:

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

مشاركة مدوّنة: آخر الأخبار حول "إضافات Chrome"، يوليو 2024

تاريخ النشر:

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

فيديو: ما هو الرمز المستضاف عن بُعد؟

تاريخ النشر:

يشرح "باتريك" من فريق "إضافات Chrome" مفهوم "الرمز البرمجي المستضاف عن بُعد" (RHC) في "إضافات Chrome". تعرَّف على سبب عدم السماح باستخدام RHC بعد الآن وكيفية رصدها والإجراءات التي يجب اتّخاذها إذا كانت إضافتك بحاجة إلى تحديث. مشاهدة الفيديو الكامل

‫127: واجهة برمجة التطبيقات الجديدة action.openPopup في Chrome

تاريخ النشر:

بدءًا من الإصدار 127 من Chrome، ستتوفّر واجهة برمجة التطبيقات action.openPopup لجميع الإضافات. في السابق، كانت هذه الميزة متاحة فقط في قناة Canary أو للإضافات التي تم تثبيتها بموجب سياسة.

فيديو: مقابلة مع فريق الثقة والسلامة

تاريخ النشر:

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

مشاركة مدونة: بدء إيقاف الإصدار 2 من بيان الإضافة نهائيًا

تاريخ النشر:

اعتبارًا من 3 يونيو، إذا كان المستخدمون لا يزالون مثبّتين لإضافات Manifest V2 على قنوات الإصدارات التجريبية والمخصّصة للمطوّرين وCanary من Chrome، سيبدأ ظهور بانر تحذيري لبعضهم عند الانتقال إلى صفحة إدارة الإضافات chrome://extensions، وسيُعلمهم البانر بأنّ بعض الإضافات (Manifest V2) التي ثبّتوها لن تكون متاحة قريبًا. يمكنك الاطّلاع على مزيد من المعلومات في الإشعار الرسمي.

تعديلات على واجهة مستخدم "اللوحة الجانبية"

تاريخ النشر:

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

مشاركة مدوّنة: إضافات Chrome في مؤتمر Google I/O لعام 2024

تاريخ النشر:

انتهى مؤتمر Google I/O لهذا العام، وقد تناولنا فيه جميع الأخبار الرائعة المتعلقة بالإضافات. يمكنك الانتقال إلى YouTube لمشاهدة الفيديو الكامل وقراءة مشاركة المدوّنة للاطّلاع على بعض النقاط البارزة.

تخطّي المراجعة للتغييرات المؤهَّلة في Declarative Net Request

تاريخ النشر:

يتيح لك "سوق Chrome الإلكتروني" الآن تخطّي المراجعة للتغييرات المؤهَّلة عند استخدام واجهة برمجة التطبيقات Declarative Net Request. يمكنك الاطّلاع على مزيد من المعلومات حول الأهلية وكيفية الموافقة على المشاركة في مستندات "سوق Chrome الإلكتروني".

‫deployPercentage متاح في Chrome Web Store API

تاريخ النشر:

عدّلنا مؤخرًا مستندات Chrome Web Store API لتضمين معلومات حول deployPercentage، ما يتيح لك تحديد نسبة مئوية من عملية طرح جزئي. مزيد من المعلومات عن deployPercentage

‫Chrome 126: التجارب الأصلية في الإضافات

تاريخ النشر:

يقدّم الإصدار 126 من Chrome حقل manifest.json جديدًا، وهو trial_tokens، ما يتيح لك الاشتراك في "التجارب الأصلية" و"تجارب الإيقاف النهائي" على جميع مساحات الإضافات. اطّلِع على الدليل لمزيد من المعلومات.

مشاركة مدوّنة: آخر الأخبار حول إضافات Chrome - أبريل 2024

تاريخ النشر:

لقد نشرنا إصدارًا جديدًا من آخر الأخبار حول إضافات Chrome. يتناول المنشور ما عمل عليه فريق الإضافات خلال الأشهر القليلة الماضية. ويشمل ذلك: إمكانية الرجوع إلى إصدار سابق في "سوق Chrome الإلكتروني"، ودعمًا أفضل لخدمة Firebase Auth، والمزيد من عمليات إطلاق وتحديث واجهات برمجة التطبيقات.

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

تاريخ النشر:

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

‫124: واجهة برمجة التطبيقات المتقدّمة documentScan API في Chrome

تاريخ النشر:

تتوفّر الآن documentScan واجهة برمجة تطبيقات متقدّمة على ChromeOS تتيح العثور على الصور واستردادها من الماسحات الضوئية للمستندات المرفقة.

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

تاريخ النشر:

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

‫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، كانت الإضافات تعمل في صفحة خلفية تبقى نشطة طوال دورة حياة الإضافة. تستخدم الإصدار 3 من ملف البيان مشغّلي الخدمات بدلاً من ذلك، وبموجب التصميم، يحافظ مشغّلو الخدمات على الموارد من خلال إيقاف التشغيل عند عدم الحاجة إليهم. ويطرح ذلك بعض التحديات المتعلقة بالاختبار. توضّح هذه المشاركة كيفية تعامل eyeo مع هذه التحديات.

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

تاريخ النشر:

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

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

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

تاريخ النشر:

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

لمزيد من المعلومات ونموذج الرمز، يُرجى الاطّلاع على التغييرات في سلوك BFCache مع منافذ رسائل الإضافة.

‫122: Chrome: إتاحة استخدام Promise في واجهات برمجة التطبيقات غير المتزامنة للإضافات

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

تم تعديل نموذج الرسائل الأصلية

تاريخ النشر:

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

‫Chrome 121: السمة lastAccessed الجديدة في tabs.Tab

تاريخ النشر:

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

‫121: إصدار تحذير الآن بشأن المفاتيح غير المتوافقة التي تعمل في "الخلفية" في Chrome

تاريخ النشر:

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

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

لقد نشرنا للتو فيديو جديدًا على قناة Chrome for Developers على YouTube نتحدث فيه مع Matt Frisbie، وهو خبير في Google Developer ومؤلف. يمكنك مشاهدة الفيديو هنا.

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

تاريخ النشر:

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

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

تاريخ النشر:

لقد نشرنا للتو الإصدار الثاني من آخر الأخبار حول إضافات Chrome. يناقش المنشور ما عمل عليه فريق الإضافات خلال الأشهر القليلة الماضية، بما في ذلك معالجة مشاكل استقرار عاملي الخدمة وإحراز تقدّم جيد في سدّ جميع الثغرات في منصة الإصدار 3 من Manifest. نشارك أيضًا إصدارات واجهات برمجة التطبيقات القادمة المثيرة، مثل Reading List API وUser Scripts API.

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

‫Chrome 118: تم ضبط القيمة التلقائية لـ isUrlFilterCaseSensitive على "خطأ"

تاريخ النشر:

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

يأتي ذلك بعد مناقشات في "مجموعة المجتمع لإضافات الويب". وقد أجرى متصفّحا Firefox وSafari تغييرًا مشابهًا.

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

تاريخ النشر:

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

أصبح من الممكن الآن البحث عن عيّنات الإضافات

تاريخ النشر:

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

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

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

الإصدار التجريبي 116 من Chrome: مزايا أكثر من أن تتّسع لها هذه الصفحة

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

نماذج جديدة: استخدام WebAssembly في الإضافات

تاريخ النشر:

يتوفّر نموذجان جديدان يوضّحان كيفية استخدام WASM في إضافة:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

‫Chrome 114: زيادة حصة storage.local

تاريخ النشر:

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

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

تاريخ النشر:

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

مزيد من النصائح حول تحديد المشاكل وحلّها في ما يتعلّق بانتهاكات "متجر الويب"

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تم النشر في

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

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

تاريخ النشر:

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

إتاحة واجهة برمجة تطبيقات معالجة الملفات على ChromeOS

تاريخ النشر:

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

لتفعيل معالجة الملفات، اتّبِع الخطوات التالية:

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

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

نماذج جديدة: التصريحات الديناميكية وعملية الإدخال الآلي

تاريخ النشر:

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

أمثلة جديدة: حالات استخدام Declarative Net Request

تاريخ النشر:

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

‫112: زيادة حصة storage.session

تاريخ النشر:

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

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

تاريخ النشر:

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

‫Chrome 110: هل تم تفعيل إحدى الإضافات؟

تاريخ النشر:

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

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

‫Chrome 110: تغيير في مهلة عدم النشاط الخاصة ببرنامج عامل الخدمة

تاريخ النشر:

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

مشاركة: تعليق عملية الإيقاف النهائي لإصدار Manifest V2

تاريخ النشر:

نحن بصدد مراجعة الجداول الزمنية لإيقاف الإصدار Manifest V2 نهائيًا، كما أنّنا نؤجّل التجارب المُجدوَلة في أوائل عام 2023. لمزيد من المعلومات، يُرجى قراءة التحديث في القائمة البريدية الخاصة بإضافات Chrome.

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

تاريخ النشر:

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

منشور المدوّنة: مزيد من التفاصيل حول الانتقال إلى الإصدار 3 من ملف البيان

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

‫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()، حيث سيحتوي الرد غير المتزامن الذي تم ضبطه على طلب مستند إلى وعد على "الرمز المميز" و "النطاقات الممنوحة" كمعلَمات في عنصر واحد (بدلاً من إصدار معاودة الاتصال الذي يتلقّاها كمعلَمات منفصلة لمعاودة الاتصال).

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

تاريخ النشر:

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

تعديل المستندات: الإفصاح عن حالة المطوِّر كتاجر أو غير تاجر

تاريخ النشر:

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

‫103: يتطلّب استخدام WebAssembly في الإصدار Manifest V3 توفُّر wasm-unsafe-eval

تاريخ النشر:

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

‫Chrome 103: تصبح تغييرات اختصارات الإصدار 3 من Manifest سارية على الفور

تاريخ النشر:

عند تغيير اختصار لوحة المفاتيح لإحدى إضافات 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: إتاحة Omnibox API في Manifest V3

تاريخ النشر:

يمكن الآن استخدام Omnibox API في الإضافات المستندة إلى عامِل الخدمة. في السابق، كانت بعض طرق واجهة برمجة التطبيقات هذه تعرض خطأ عند استدعائها بسبب التبعيات الداخلية على إمكانات نموذج المستند (DOM).

‫Chrome 102: السماح باستخدام wasm-unsafe-eval في سياسة أمان المحتوى (CSP) للإصدار Manifest V3

تاريخ النشر:

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

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

تاريخ النشر:

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

تعديل على المستندات: اكتشاف المنتجات في "سوق 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: وظيفة omnibox.setDefaultSuggestion() تتوافق مع الوعود وعمليات معاودة الاتصال

تاريخ النشر:

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

‫Chrome 100: إتاحة i18n.getMessage() في عاملي الخدمة للإضافات

تاريخ النشر:

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

‫Chrome 99: match_origin_as_fallback في Canary

تاريخ النشر:

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

الإصدار 99 من Chrome: إتاحة برامج الخدمة الخاصة بالإضافات لمخططات الملفات في Canary

تاريخ النشر:

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

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

تاريخ النشر:

تمت إضافة إمكانية استخدام الوعود إلى tabs.sendMessage وruntime.sendMessage وruntime.sendNativeMessage للإضافات المتوافقة مع الإصدار 3 من Manifest.

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

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

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

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

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

تاريخ النشر:

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

تعديل على المستندات: المخطط الزمني لإتاحة الإصدار Manifest V2

تاريخ النشر:

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

‫Chrome 96: إذن declarativeNetRequestWithHostAccess

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

تعرض الآن الطرق المتوفّرة في الإصدار 3 من ملف البيان لواجهة برمجة التطبيقات chrome.storage نتائج على شكل وعود.

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

تاريخ النشر:

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

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

تاريخ النشر:

تتيح 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 الإلكتروني". مزيد من المعلومات في مشاركة المدوّنة

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

تاريخ النشر:

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

مشاركة المدونة: تقديم 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() السمة frameId

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

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

تاريخ النشر:

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

الإصدار 88 من Chrome: إتاحة الإصدار 3 من بيان الإضافة للجميع

تاريخ النشر:

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