เกิดอะไรขึ้นในส่วนขยาย Chrome

เมื่อเดือนกรกฎาคมที่ผ่านมา เราได้เปิดตัวซีรีส์บล็อกใหม่เพื่อให้คุณทราบข้อมูลอัปเดตเกี่ยวกับการพัฒนาส่วนขยาย ความคิดเห็นอันมีค่าของคุณและการทํางานร่วมกับผู้ให้บริการเบราว์เซอร์รายอื่นๆ ในกลุ่มชุมชน WebExtensions อย่างต่อเนื่องช่วยให้เราปรับปรุง API ของส่วนขยายและมุ่งมั่นสร้างความสอดคล้องกันมากขึ้นในเบราว์เซอร์ต่างๆ ได้

ยินดีต้อนรับสู่ฉบับเดือนตุลาคม ในโพสต์นี้ เราจะพูดถึงการเปลี่ยนแปลงบางอย่างที่ทีมส่วนขยายของ Chrome ได้ทำในช่วงไม่กี่เดือนที่ผ่านมา รวมถึงฟีเจอร์ใหม่ๆ บางรายการที่จะเปิดตัวภายในปีนี้ มาเริ่มกันเลย

API และฟีเจอร์ใหม่ของส่วนขยาย

ส่วนนี้จะแชร์การเปิดตัว API ที่สําคัญบางรายการ ตรวจสอบการปรับปรุง API อื่นๆ สั้นๆ และแชร์รุ่นที่กําลังจะเปิดตัว ขณะนี้การเปิดตัวทั้งหมดพร้อมใช้งานในรุ่นเบต้าล่าสุด โปรดดูรายละเอียดที่กำหนดการเผยแพร่ Chromium

ไฮไลต์

ปัญหาที่ทราบซึ่งแก้ไขแล้ว

ทีมส่วนขยายกําลังดําเนินการอย่างเต็มที่เพื่อแก้ไขปัญหาความเสถียรของ Manifest V3 Chrome 116 เปิดตัวการปรับปรุงหลายอย่างซึ่งช่วยให้เราก้าวหน้าไปมากในการปิดช่องว่างของฟีเจอร์ระหว่าง Manifest V2 กับ V3 ใน Chrome 120 เราจะแก้ไขปัญหาช่องโหว่ของแพลตฟอร์มที่มีความสำคัญทั้งหมดและปิดข้อบกพร่องร้ายแรงทั้งหมดที่บันทึกไว้ในหน้าปัญหาที่ทราบ ขณะนี้ฟีเจอร์ทั้งหมดพร้อมใช้งานใน Chrome 120 Canary ยกเว้นการรองรับ fileHandler สำหรับ ChromeOS Lacros และ userScripts API ซึ่งจะพร้อมใช้งานภายในเดือนนี้ ดูรายละเอียดเพิ่มเติมได้ที่หน้าปัญหาที่ทราบฉบับปรับปรุง

ปรับปรุงความเสถียรของ Service Worker

ปัญหาความเสถียรที่เกี่ยวข้องกับ Service Worker ได้รับการแก้ไขแล้ว ใน Chrome 116 เราได้เพิ่มการคงสถานะไว้อย่างมีประสิทธิภาพใน API ของส่วนขยายที่แสดงข้อความแจ้งให้ผู้ใช้ดำเนินการและปรับปรุงการรองรับ WebSockets (ดูบทแนะนำการใช้ WebSockets ในส่วนขยาย) ตั้งแต่ Chrome 118 เป็นต้นไป บริการเวิร์กเกอร์จะยังคงทำงานอยู่ในช่วงเซสชัน Debugger API ที่ใช้งานอยู่

ดูรายละเอียดเพิ่มเติมได้ในคำแนะนำเกี่ยวกับ Service Worker ฉบับปรับปรุง หากผู้ใช้ยังคงพบปัญหาความเสถียรที่เกี่ยวข้องกับ Service Worker ใน Chrome เวอร์ชันหลัง 119 โปรดแจ้งให้เราทราบ

การรักษาความปลอดภัยที่เพิ่มขึ้น

ก่อนหน้านี้ การไปยัง URL chrome:// บางรายการโดยใช้ tabs.update(), tabs.create และ windows.create() จะแสดงข้อผิดพลาดหรือทำให้ Chrome ขัดข้อง นอกจากนี้ tabs.update() ยังเปิด URL ของ JavaScript ไม่ได้ ใน Chrome 117 เราได้เพิ่มจำนวน URL ของ chrome:// ที่รองรับ และตอนนี้การบล็อก URL ของ JavaScript จะมีผลกับเมธอด API ทั้งหมดของส่วนขยายด้วย

ใน Chrome 117 ผู้ใช้จะได้รับการแจ้งเตือนล่วงหน้าในหน้าส่วนขยายของ Chrome หากส่วนขยายที่ติดตั้งไว้ไม่พร้อมใช้งานใน Chrome เว็บสโตร์อีกต่อไป กรณีนี้อาจเกิดขึ้นหากนักพัฒนาแอปเลิกเผยแพร่ส่วนขยาย ส่วนขยายถูกนำออกเนื่องจากการละเมิดนโยบาย หรือมีการระบุว่าเป็นมัลแวร์ ดูข้อมูลโดยละเอียดได้ที่การนำการตรวจสอบความปลอดภัยมาไว้ในหน้า chrome://extensions

ใน Chrome 118 ระบบจะไม่อนุญาตให้ส่วนขยายไปยัง URL file:// โดยใช้ chrome.tabs และ chrome.windows API เว้นแต่ว่าจะมีการเปิดใช้ตัวเลือก "อนุญาตให้เข้าถึง URL ของไฟล์" ในหน้ารายละเอียดของส่วนขยาย ดูการสนทนาใน WECG

การเปิดตัว API เพิ่มเติม

  • Runtime API: ตั้งแต่ Chrome 116 เป็นต้นไป คุณจะใช้ runtime.getContexts() เพื่อดึงข้อมูลเกี่ยวกับบริบทที่ใช้งานอยู่ได้ เช่น คุณสามารถตรวจสอบว่ามีเอกสารที่ใช้งานอยู่นอกหน้าจอหรือไม่
  • Side Panel API ใน Chrome 116 คุณสามารถใช้ sidepanel.open() เพื่อเปิดแผงด้านข้างของส่วนขยายแบบเป็นโปรแกรมเพื่อตอบสนองต่อท่าทางสัมผัสของผู้ใช้ เช่น การคลิกเมนูบริบท
  • TabCapture API เพิ่มความสามารถในการเรียก getMediaStreamId() จาก Service Worker ของส่วนขยายและรับออบเจ็กต์ MediaStream จากรหัสสตรีมในเอกสารที่อยู่นอกหน้าจอใน Chrome 116 ดูตัวอย่างได้ที่การบันทึกเสียงและการจับภาพหน้าจอ
  • DeclarativeNetRequest API: ค่าเริ่มต้นสำหรับพร็อพเพอร์ตี้ isUrlFilterCaseSensitive เปลี่ยนเป็น false ใน Chrome 118

พบกันเร็วๆ นี้...

เราวางแผนที่จะแก้ไขปัญหาที่เหลือทั้งหมดในหน้าปัญหาที่ทราบด้วยการเปิดตัว Chrome 120 นอกจากนี้ เรายังมีแผนที่จะเพิ่มฟีเจอร์ต่อไปนี้

  • UserScripts API จะช่วยให้ผู้จัดการสคริปต์ของผู้ใช้ประสานงานเกี่ยวกับวิธีและเวลาที่จะแทรกคอลเล็กชันสคริปต์ของผู้ใช้ลงในหน้าเว็บได้ ดูรายละเอียดได้ในข้อเสนอ WECG
  • ReadingList API จะช่วยให้นักพัฒนาแอปสร้าง อ่าน อัปเดต และลบข้อมูลเมตาที่อยู่ในแผงเรื่องรออ่านของแผงด้านข้างได้ ดูประกาศได้ในมีอะไรใหม่ในส่วนขยาย Chrome
  • จากความคิดเห็นในกลุ่มชุมชนส่วนขยายเว็บ เราจึงเพิ่มขีดจำกัดของชุดกฎแบบคงที่ที่เปิดใช้จาก 10 เป็น 50 รายการ นอกจากนี้ เรายังเพิ่มจำนวนกฎชุดคงที่ทั้งหมดที่อนุญาตจาก 50 เป็น 100 รายการ ปัจจุบันฟีเจอร์นี้พร้อมให้ใช้งานใน Canary
  • File Handling API: จะใช้ได้กับส่วนขยาย ChromeOS ตั้งแต่ ChromeOS 120 เป็นต้นไป ซึ่งจะช่วยให้ส่วนขยายเปิดไฟล์ที่มีประเภท MIME และนามสกุลไฟล์ที่ระบุในลักษณะที่คล้ายกับการจัดการไฟล์บนแพลตฟอร์มเว็บได้
  • ส่วนขยายจะใช้ Push API บนเว็บผ่าน self.registration.pushManager.subscribe() ได้โดยไม่ต้องแสดงการแจ้งเตือนที่ผู้ใช้มองเห็นโดยการตั้งค่า userVisibleOnly เป็น false ซึ่งจะทำให้ Push Notification เป็นทางเลือกที่ราบรื่นยิ่งขึ้นสำหรับ WebSocket ใน Service Worker (MV3) สำหรับการสื่อสารแบบไม่พร้อมกันระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ โปรดดูรายละเอียดที่ข้อบกพร่องของ Chromium และการสนทนาใน WECG

โปรดติดตามประกาศในหน้ามีอะไรใหม่ในส่วนขยายทันทีที่ฟีเจอร์เหล่านี้พร้อมใช้งานใน Chrome รุ่นเบต้า

การอัปเกรดเอกสารประกอบ

นอกจากนี้ เรายังปรับปรุงและเพิ่มเอกสารประกอบด้วย โปรดถามคำถามต่อใน chromium-group และรายงานปัญหาเกี่ยวกับเอกสารประกอบ

ไฮไลต์

ข้อมูลอัปเดตเพิ่มเติม

พบกันเร็วๆ นี้...

  • เอกสารอ้างอิงและบทแนะนำเกี่ยวกับ User Scripts API
  • บทแนะนำและตัวอย่าง Firebase
  • ข้อมูลอ้างอิง ReadingList API

การออกแบบใหม่ของ Chrome เว็บสโตร์ 🌈

ภาพหน้าจอของหน้าแรกของ Chrome เว็บสโตร์
หน้าแรกของ Chrome เว็บสโตร์เวอร์ชันใหม่

เมื่อช่วงต้นเดือนที่ผ่านมา เราได้ประกาศตัวอย่างก่อนเปิดตัวของ Chrome เว็บสโตร์ที่ปรับปรุงใหม่ตามที่ได้บอกใบ้ไว้ในงาน Google I/O ไปดูด้วยตัวคุณเองได้เลยที่ https://chromewebstore.google.com/ การเปลี่ยนแปลงที่ควรทราบมีดังนี้

  • เพิ่มรายการหมวดหมู่จาก 11 รายการเป็นรายการใหม่ที่มี17 รายการใน 3 กลุ่ม
  • การปรับปรุงการเติมข้อความอัตโนมัติในการค้นหา
  • ตอนนี้ภาพหน้าจอจะแสดงด้วยคุณภาพที่สูงขึ้นอย่างมาก คุณสามารถอัปโหลดภาพหน้าจอขนาด 1280x800 ได้หากยังไม่ได้ดำเนินการ
  • ตอนนี้การตอบคำถามในแท็บการสนับสนุนจะแสดงบรรทัดใหม่
  • เมื่อตอบรีวิวของผู้ใช้และคำถามเกี่ยวกับการสนับสนุน ตอนนี้คำตอบของคุณจะมีป้าย "นักพัฒนาแอป" ข้างชื่อ
  • คุณสามารถให้ลิงก์ไปยังหน้ารีวิวแก่ผู้ใช้โดยตรงได้โดยเพิ่ม "/reviews" ต่อท้าย URL ของสินค้าใน Store เช่น https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews

ขอขอบคุณทุกคนที่ให้ข้อมูลใน chromium-google group โปรดเข้าร่วมการสนทนาหรือส่งความคิดเห็นถึงทีม CWS โดยตรงโดยใช้รายการเมนูแสดงความคิดเห็น

แสดงความคิดเห็นในหน้า Chrome เว็บสโตร์
การให้ความคิดเห็นในหน้า Chrome เว็บสโตร์

นอกจากนี้ คุณยังส่งแบบฟอร์มเสนอชื่อตนเองเพื่อแสดงในคอลเล็กชันรายการแนะนำของบรรณาธิการได้ด้วย โปรดรอติดตามการปรับปรุงที่จะเกิดขึ้นในหน้าแดชบอร์ดสำหรับนักพัฒนาแอปเร็วๆ นี้

💡 ทราบหรือไม่

  • เรามีวิดีโอใหม่เกี่ยวกับการแก้ไขข้อบกพร่องส่วนขยาย Chrome คู่มือนี้ครอบคลุมหัวข้อต่างๆ ที่คุณอาจคุ้นเคยอยู่แล้ว และยังแชร์เคล็ดลับเจ๋งๆ เกี่ยวกับการใช้เครื่องมือสำหรับนักพัฒนาเว็บในส่วนขยายด้วย
  • ตอนนี้คุณจำเป็นต้องระบุนโยบายความเป็นส่วนตัวสำหรับส่วนขยายแต่ละรายการ ก่อนหน้านี้ คุณสามารถเพิ่มนโยบายความเป็นส่วนตัวได้เพียง 1 รายการต่อบัญชีนักพัฒนาแอป แต่อาจไม่สะดวกหากคุณมีส่วนขยายหลายรายการในบัญชีนักพัฒนาแอปเดียว อินเทอร์เฟซใหม่นี้จะอยู่ในแท็บความเป็นส่วนตัวของรายการในหน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ ซึ่งหมายความว่าระบบจะไม่รองรับนโยบายความเป็นส่วนตัวระดับบัญชีอีกต่อไป
    ภาพหน้าจอของช่องนโยบายความเป็นส่วนตัว
    ภาพหน้าจอของช่องนโยบายความเป็นส่วนตัว

ติดต่อมา 🙌

เรายังคงติดต่อชุมชนนักพัฒนาส่วนขยายผ่านการประชุมแบบ 1:1, การเปิดตัวโปรแกรมใหม่ๆ และการเข้าร่วมการประชุมสุดยอด ไฮไลต์บางส่วนมีดังนี้

  • โปรแกรม Google Developer Expert สำหรับส่วนขยายได้เปิดตัวไปเมื่อเดือนสิงหาคม เรามี GDE ใหม่กว่า 12 คนซึ่งมุ่งเน้นที่ส่วนขยาย Chrome จากทั่วโลกที่คอยให้ความคิดเห็นที่ยอดเยี่ยมกับเรา นี่เป็นช่วงเวลาที่น่าตื่นเต้นมากสำหรับโปรแกรม
  • เราเข้าร่วม TPAC (การประชุมประจำปีของ W3C) ในฐานะส่วนหนึ่งของกลุ่มชุมชนส่วนขยายเว็บ และพบกับตัวแทนจาก Firefox และ Safari รวมถึงสมาชิกชุมชนหลายคน เรามีความคืบหน้าอย่างมากในหลายหัวข้อ ซึ่งรวมถึงการมุ่งสู่ Extension API ที่สอดคล้องกันมากขึ้น การทำงานเกี่ยวกับข้อกำหนด และการสร้างจาก Web Platform Tests เพื่อสร้างชุดทดสอบใหม่ อ่านรายงานการประชุมฉบับเต็มในที่เก็บ WECG
  • เมื่อสัปดาห์ที่แล้ว ทีมส่วนขยายได้เข้าร่วมAd-Filtering Dev Summit ในอัมสเตอร์ดัม เราได้พูดคุยกับคุณหลายท่านในการแชทแบบสบายๆ ที่พวกเขาจัดขึ้นก่อนสัปดาห์การประชุมสุดยอดและช่วงเปิดสำนักงานในวันศุกร์
    ทีมส่วนขยายใน Ad-filtering Dev Summit
    ทีมส่วนขยายใน Ad-filtering Dev Summit

แม้ว่าคุณจะเข้าร่วมกิจกรรมเหล่านี้ไม่ได้ คุณก็มีส่วนร่วมได้ด้วยการถามคำถามใน Google Group chromium-extensions ติดตามการสนทนาของพาร์ทเนอร์เบราว์เซอร์ใน WECG และรายงานปัญหาเกี่ยวกับเอกสารประกอบ

ขอขอบคุณอีกครั้งที่ร่วมเป็นส่วนหนึ่งของชุมชนนักพัฒนาส่วนขยาย