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

เอมี่ Steam
เอมี่ Steam

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

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

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 เราได้เพิ่มฟีเจอร์ Keep-al ที่มีประสิทธิภาพให้กับ API ส่วนขยายที่แสดงข้อความแจ้งของผู้ใช้ และปรับปรุงการรองรับ WebSockets (ดูบทแนะนำการใช้ WebSockets ในส่วนขยาย) ตั้งแต่ Chrome 118 เป็นต้นไป โปรแกรมทำงานของบริการจะยังใช้งานได้ในระหว่างเซสชัน Debugger API ที่ใช้งานอยู่

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

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

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

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

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

เปิดตัว API เพิ่มเติม

  • Runtime API: ตั้งแต่ Chrome 116 เป็นต้นไป คุณจะใช้ runtime.getContexts() เพื่อเรียกดูข้อมูลเกี่ยวกับบริบทที่ใช้งานอยู่ได้ เช่น คุณสามารถตรวจสอบว่ามีเอกสารที่ใช้งานอยู่นอกหน้าจอหรือไม่
  • 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 เป็นทางเลือกที่ลื่นไหลมากขึ้นเมื่อเทียบกับ WebSockets ใน Service Worker (MV3) สำหรับการสื่อสารแบบไม่พร้อมกันระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ โปรดดูรายละเอียดที่ข้อบกพร่องของ Chromium และการพูดคุยของ WECG

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

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

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

ไฮไลต์

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

เร็วๆ นี้...

  • ข้อมูลอ้างอิงและบทแนะนำเกี่ยวกับสคริปต์ของผู้ใช้
  • บทแนะนำและตัวอย่าง Firebase
  • เอกสารอ้างอิง API ของ ReadingList

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

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

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

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

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

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

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

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

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

ติดต่อมา 🙌

เรายังคงติดต่อกับชุมชนนักพัฒนาซอฟต์แวร์ส่วนขยายผ่านการพูดคุยแบบ 1:1 การเปิดตัวโปรแกรมใหม่ และการเข้าร่วมงานประชุมมาอย่างต่อเนื่อง ต่อไปนี้เป็นไฮไลต์ที่สำคัญ

  • ส่วนขยายโปรแกรมผู้เชี่ยวชาญด้านนักพัฒนาซอฟต์แวร์ของ Google เปิดตัวไปเมื่อเดือนสิงหาคม เรามี GDE ใหม่ที่มุ่งเน้นส่วนขยาย Chrome อีกหลายสิบรายการจากทั่วโลกซึ่งให้ความคิดเห็นกับเราเป็นอย่างดี นี่เป็นช่วงเวลาที่น่าตื่นเต้นมากสำหรับโปรแกรมนี้
  • เราได้เข้าร่วม TPAC (การประชุมประจำปีของ W3C) ซึ่งเป็นส่วนหนึ่งของ Web Extensions Community Group และได้พบปะกับตัวแทนจาก Firefox และ Safari และสมาชิกหลายคนของชุมชน เราคืบหน้าไปอย่างมากในหลายๆ หัวข้อ ซึ่งรวมถึงการเปลี่ยนไปใช้ API ส่วนขยายที่สอดคล้องกันมากขึ้น การพัฒนาข้อกำหนด และต่อยอดจากการทดสอบแพลตฟอร์มเว็บเพื่อสร้างชุดการทดสอบใหม่ อ่านนาทีฉบับเต็มในที่เก็บ WECG
  • เมื่อสัปดาห์ที่แล้ว ทีมส่วนขยายได้เข้าร่วม Ad-Filtering Dev Summit ในอัมสเตอร์ดัม และได้พบพวกคุณหลายคนในร้านกาแฟที่จัดขึ้นก่อนสัปดาห์งานประชุมและในเวลาทำการในวันศุกร์
    ทีมส่วนขยายในงาน Dev Summit เรื่องการกรองโฆษณา
    ทีมส่วนขยายในงาน Dev Summit เรื่องการกรองโฆษณา

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

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