أطلقنا في تموز (يوليو) سلسلة مدونات جديدة تتيح لك الاطّلاع على آخر تطوّرات الإضافات. بفضل تعليقاتك القيّمة وتعاوننا المستمر مع موردي المتصفحات الآخرين في مجموعة منتديات WebExtensions، نواصل تحسين واجهات برمجة التطبيقات للإضافات ونسعى إلى تحقيق المزيد من الاتساق بين المتصفحات.
مرحبًا بك في إصدار تشرين الأول (أكتوبر) في هذه المشاركة، سنلقي نظرة على بعض التغييرات التي أجراها فريق إضافات Chrome خلال الأشهر القليلة الماضية، فضلاً عن بعض الميزات الجديدة التي سيتم طرحها في وقت لاحق من هذا العام. لِنبدأ.
واجهات برمجة التطبيقات والميزات الجديدة للإضافات
في هذا القسم، سنشارك بعض عمليات إطلاق واجهات برمجة التطبيقات المهمة، ونراجع بإيجاز التحسينات الأخرى في واجهة برمجة التطبيقات، ونشارك الإصدارات القادمة. تتوفّر جميع عمليات الإطلاق حاليًا في أحدث إصدار تجريبي. ويمكنك الاطّلاع على الجدول الزمني لإصدارات Chromium لمعرفة التفاصيل.
أهم التفاصيل
المشاكل المعروفة التي تم حلّها
كان فريق الإضافة يعمل بشكل نشط لحلّ مشاكل ثبات الإصدار Manifest V3. أطلق Chrome 116 العديد من التحسينات التي ساعدتنا في إحراز تقدّم كبير نحو سد ثغرة الميزات بين إصدار Manifest V2 وV3. في Chrome 120، سننتهي من معالجة جميع الثغرات ذات الأولوية في النظام الأساسي وأغلقنا جميع الأخطاء الملحّة الموثَّقة في صفحة المشاكل المعروفة. جميع الميزات متاحة حاليًا في Chrome 120 Canary، باستثناء توافق fileHandler مع ChromeOS Lacros وواجهة برمجة التطبيقات userScripts API التي ستتوفّر في وقت لاحق من هذا الشهر. اطّلِع على صفحة المشاكل المعروفة المعدّلة للحصول على مزيد من التفاصيل.
تحسين استقرار مشغِّل الخدمات
تم حلّ المشاكل المتعلّقة بالاستقرار في مشغّل الخدمات. في Chrome 116، أضفنا إحصاءات قوية لواجهات برمجة التطبيقات الخاصة بالإضافات التي تعرض طلبًا من المستخدم، كما أضفنا دعمًا محسّنًا لـ WebSockets (يمكنك الاطّلاع على الدليل التعليمي استخدام WebSockets في الإضافات). واعتبارًا من الإصدار 118 من Chrome فصاعدًا، سيظل عامل الخدمة نشطًا خلال جلسة نشطة لواجهة برمجة التطبيقات Debugger API.
يمكنك الاطّلاع على إرشادات مشغِّلي الخدمات المعدّلة للحصول على مزيد من التفاصيل. إذا استمر المستخدمون في مواجهة مشاكل متعلقة بثبات مشغّل الخدمات في إصدارات Chrome بعد 119، يُرجى إعلامنا بذلك.
مستوى أمان أعلى
في السابق، أدى الانتقال إلى بعض عناوين URL التي يبلغ عددها chrome://
باستخدام tabs.update()
وtabs.create
وwindows.create()
إلى حدوث خطأ أو إلى تعطُّل Chrome. بالإضافة إلى ذلك، تعذَّر على tabs.update()
فتح عنوان URL بلغة JavaScript. في Chrome 117، وسّعنا عدد عناوين URL المتوافقة التي يبلغ عددها chrome://
، وأصبح حظر عناوين URL بلغة JavaScript ينطبق الآن على جميع طرق واجهات برمجة التطبيقات الخاصة بالإضافات.
في الإصدار 117 من Chrome، سيتلقّى المستخدمون إشعارات استباقية على صفحة "إضافات Chrome" في حال لم تعُد الإضافة التي ثبَّتوها متاحة في "سوق Chrome الإلكتروني". يمكن أن يحدث ذلك إذا ألغى المطوّر نشر الإضافة، أو إذا تمت إزالتها بسبب انتهاكات السياسة، أو إذا تم تحديدها كبرامج ضارة. لمزيد من التفاصيل، يُرجى الاطّلاع على جلب ميزة "تأكيد السلامة" إلى صفحة chrome://extensions.
في Chrome 118، لن يتم السماح للإضافات بالانتقال إلى عناوين URL التي تتضمّن file://
باستخدام واجهتَي برمجة التطبيقات chrome.tabs
وchrome.windows
ما لم يكن خيار "السماح بالوصول إلى عناوين URL للملفات" مفعَّلاً في صفحة تفاصيل الإضافة. يُرجى الاطّلاع على مناقشة WECG.
المزيد من عمليات إطلاق واجهة برمجة التطبيقات
- واجهة برمجة تطبيقات وقت التشغيل: بدءًا من Chrome 116، يمكنك استخدام
runtime.getContexts()
لاسترداد معلومات عن السياقات النشطة. على سبيل المثال، يمكنك التحقّق مما إذا كان هناك مستند نشط خارج الشاشة. - Side Panel API في Chrome 116 يمكنك استخدام
sidepanel.open()
لفتح اللوحة الجانبية للإضافة بشكل آلي استجابةً لإيماءة مستخدم، مثل النقر على قائمة السياق. - TabCapture API تمت إضافة إمكانية استدعاء
getMediaStreamId()
من مشغّل خدمات الإضافات والحصول على عنصرMediaStream
من معرّف مصدر البيانات في مستند خارج الشاشة في Chrome 116. راجِع تسجيل الصوت والتقاط الشاشة للحصول على أمثلة. - DeclarativeNetRequest API: تم تغيير القيمة التلقائية للسمة
isUrlFilterCaseSensitive
إلىfalse
في Chrome 118.
يتوفر قريبًا...
نخطط لمعالجة جميع العناصر المتبقية في صفحة المشاكل المعروفة في إصدار Chrome 120. فضلاً عن ذلك، نخطّط لإضافة الميزات التالية:
- ستتيح UserScripts API لمدراء النصوص البرمجية للمستخدم تنسيق طريقة ووقت إدخال مجموعة من النصوص البرمجية للمستخدم في صفحات الويب. اطّلِع على اقتراح WECG لمعرفة التفاصيل.
- ستتيح ReadingList API للمطوّرين إنشاء البيانات الوصفية المتوفرة في لوحة "قائمة القراءة" في اللوحة الجانبية وقراءتها وتعديلها وحذفها. يمكنك مشاهدة الميزات الجديدة في إضافات Chrome للاطّلاع على الإشعار.
- بعد تلقّي الملاحظات في "مجموعة منتدى إضافات الويب"، نعمل بشكل كبير على زيادة عدد القواعد الثابتة المفعّلة من 10 إلى 50. بالإضافة إلى ذلك، نزيد إجمالي عدد مجموعات القواعد الثابتة المسموح بها من 50 إلى 100. هذه الميزة متاحة حاليًا في إصدار Canary.
- ستتوفّر واجهة برمجة تطبيقات معالجة الملفات: لإضافات نظام التشغيل ChromeOS بدءًا من الإصدار 120 من ChromeOS، ما يتيح للإضافات فتح الملفات باستخدام أنواع MIME محدّدة وامتدادات الملفات بطريقة مشابهة لمعالجة ملفات النظام الأساسي للويب.
- ستتمكّن الإضافات من استخدام واجهة برمجة التطبيقات Push API على الويب من خلال
self.registration.pushManager.subscribe()
بدون عرض إشعار مرئي للمستخدم من خلال ضبطuserVisibleOnly
علىfalse
. سيجعل ذلك الإشعارات الفورية بديلاً أكثر سلاسة لـ WebSockets في مشغّلي الخدمات (MV3) للاتصال غير المتزامن لخادم العميل. راجِع خطأ Chromium ومناقشة WECG للحصول على التفاصيل.
يُرجى متابعة صفحة الميزات الجديدة في الإضافات للاطّلاع على الإشعارات فور توفُّر هذه الميزات في الإصدار التجريبي من Chrome.
عمليات الترقية إلى المستندات
نعمل أيضًا على تحسين مستنداتنا وإضافتها. يُرجى مواصلة طرح الأسئلة حول chromium-group والإبلاغ عن مشاكل المستندات.
أهم التفاصيل
- لقد جددنا الصفحة المقصودة للنماذج. ويمكنك الآن الفلترة حسب واجهة برمجة التطبيقات والإذن والنوع، ما يسهِّل العثور على نماذج معيَّنة. كان هذا التحسين عبارة عن جهد تعاوني مع المتدرب في برنامج Summer of Code، وهو السيد Xuezhou داي. يمكنك قراءة حول تجربته في مشاركة المدونة هذه.
- يوضّح استخدام حسابك على "إحصاءات Google" مع "سوق Chrome الإلكتروني" طريقة عرض "إحصاءات Google 4" لبطاقة بيانات "سوق Chrome الإلكتروني"، بالإضافة إلى البيانات التي تقدّمها "لوحة بيانات المطوّر". يقدّم هذا الدليل خطوات لتفعيل "إحصاءات Google" ومراقبة أداء الإعلانات وتتبُّع الإحالات الناجحة ومنح الحسابات الأخرى إذن الوصول إلى بيانات "إحصاءات Google".
- نشرنا دليلاً جديدًا حول آلية عمل ملفات تعريف الارتباط وواجهات برمجة تطبيقات التخزين على الويب في إضافات Chrome. وتتضمّن كل ما تحتاج إلى معرفته عن مبادرة حماية الخصوصية بصفتك مطوّر إضافات.
- أطلقنا مقالات جديدة حول كيفية دمج الاختبار في مشاريع الإضافات: يتناول اختبار الوحدات في إضافات Chrome والاختبار الشامل للإضافات الإرشادات العامة وأفضل الممارسات في عدد من أُطر العمل الرائجة. للحصول على برنامج تعليمي عملي، يُرجى الاطّلاع على اختبار إضافات Chrome باستخدام Puppeteer.
المزيد من آخر المعلومات
- أعدنا كتابة إرشادات Declarative Net Request API بطريقة ترسم صورة أوضح لكيفية تنفيذ مجموعات القواعد التعريفية.
- أضفنا المزيد من الإرشادات حول نقل الرموز البرمجية المستضافة عن بُعد إلى الإصدار Manifest V3. بالإضافة إلى ذلك، للحدّ من خطر مواجهة المشاكل أثناء الإصدار، نقدّم استراتيجيات نشر إضافة Manifest V3 على مراحل.
- تعرَّف على كيفية الاتصال بـ WebSocket في مشغّل الخدمات الخاص بالإضافات.
- لقد وسّعنا نطاق دليل الحصول على المساعدة ليشمل تعليمات أكثر تفصيلاً حول كيفية الإبلاغ عن خطأ وتتبُّع المشاكل الحالية وطلب ميزات جديدة وغير ذلك.
يتوفر قريبًا...
- مرجع ودليل تعليمي حول User Scripts API
- الدليل التوجيهي عن Firebase والنماذج النموذجية.
- مرجع واجهة برمجة تطبيقاتReadList.
إعادة تصميم سوق Chrome الإلكتروني 💫
في وقت سابق من هذا الشهر، أعلنّا عن إطلاق "سوق Chrome الإلكتروني" الجديد بشكل مبكر، كما أوضحنا في مؤتمر Google I/O. ويمكنك الاطّلاع عليه بنفسك https://chromewebstore.google.com/. في ما يلي بعض التغييرات الجديرة بالملاحظة:
- تمت زيادة قائمة الفئات من قائمة أحد عشر فئات إلى قائمة جديدة مكوّنة من 17 فئة في ثلاث مجموعات.
- تم تحسين الإكمال التلقائي في البحث.
- يتم الآن عرض لقطات الشاشة بجودة أعلى بكثير. يمكنك تحميل لقطات شاشة بحجم 1280×800 إذا لم يسبق لك إجراء ذلك.
- ستظهر الأسطر الجديدة الآن في الردود على الأسئلة في علامة تبويب "الدعم".
- عند الرد على مراجعات المستخدمين وأسئلة الدعم، ستظهر شارة "مطوِّر" بجانب اسمك.
- يمكنك تزويد المستخدمين برابط مباشر يؤدي إلى صفحة المراجعات عن طريق إضافة "/reviews" في نهاية عنوان URL لعنصر المتجر، على سبيل المثال:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
شكرًا للجميع على الملاحظات التي أرسلها الجميع حتى الآن في مجموعة Chromium-google. لا تتردد في الانضمام إلى المناقشة أو إرسال ملاحظاتك مباشرةً إلى فريق "سوق Chrome الإلكتروني" باستخدام عنصر القائمة تقديم ملاحظات:
بالإضافة إلى ذلك، يمكنك إرسال نموذج الترشيح الذاتي ليتم عرضه في مجموعة اختيارات المحررين. يمكنك متابعتنا للتعرّف على التحسينات التي سنجريها قريبًا على لوحة بيانات المطوّر أيضًا.
💡 هل تعلم؟
- يتوفّر فيديو جديد عن تصحيح أخطاء إضافات Chrome. وهو يتناول العديد من المواضيع التي قد تكون على دراية بها، كما يقدّم بعض النصائح الرائعة حول استخدام "أدوات مطوري البرامج" في الإضافات.
- يُطلب منك الآن تقديم سياسة خصوصية لكل إضافة. في السابق، كان بإمكانك إضافة سياسة خصوصية واحدة فقط لكل حساب مطوِّر، ولكن كان من الصعب أن يكون لديك بعض الإضافات ضمن حساب مطوِّر واحد. وتتوفر هذه الواجهة الجديدة في علامة تبويب الخصوصية للعنصر ضمن لوحة بيانات المطوّر. وهذا يعني أن سياسات الخصوصية على مستوى الحساب لم تعد متاحة.
التواصل 🙌
وقد واصلنا التواصل مع منتدى مطوِّري الإضافات من خلال الاجتماعات الشخصية وإطلاق برامج جديدة وحضور المؤتمرات. في ما يلي بعض الميزات المهمة:
- تم إطلاق الإضافات برنامج خبراء التطوير في Google في آب (أغسطس). لدينا العشرات من أدوات GDE الجديدة التي تركز على إضافات Chrome من جميع أنحاء العالم والتي تقدّم لنا ملاحظات رائعة. إنّه وقت مشوّق للغاية بالنسبة إلى البرنامج!
- حضرنا TPAC (مؤتمر W3C السنوي) كجزء من مجموعة منتديات إضافات الويب، والتقينا بممثلين من Firefox وSafari بالإضافة إلى العديد من أعضاء المنتدى. لقد أحرزنا تقدّمًا كبيرًا في عدة مواضيع، بما في ذلك الانتقال إلى واجهات برمجة تطبيقات أكثر اتساقًا للإضافات، والعمل على تحديد مواصفات، والاستفادة من اختبارات النظام الأساسي للويب لإنشاء حزمة اختبار جديدة. ويمكنك قراءة الدقائق الكاملة في مستودع WECG.
- في الأسبوع الماضي، شارك فريق التمديد في مؤتمر مطوّري برامج فلترة الإعلانات في أمستردام. لقد التقوا بالعديد منكم في محادثة قهوة استضافوها قبل أسبوع المؤتمر وساعات العمل المفتوحة يوم الجمعة.
حتى إذا لم تتمكّن من حضور أي من هذه الفعاليات، يمكنك مواصلة المشاركة من خلال طرح أسئلة على مجموعة Google حول chromium-extensions، ومتابعة مناقشات شركاء المتصفِّح حول WECG، والإبلاغ عن أي مشاكل تتعلّق بالمستندات.
شكرًا لك مرة أخرى على انضمامك إلى منتدى مطوّري الإضافات.