โปรดเข้ามาดูหน้านี้บ่อยๆ เพื่อดูข้อมูลเกี่ยวกับการเปลี่ยนแปลงส่วนขยาย Chrome, เอกสารประกอบเกี่ยวกับส่วนขยาย หรือนโยบายที่เกี่ยวข้อง หรือการเปลี่ยนแปลงอื่นๆ คุณจะเห็นประกาศอื่นๆ ที่โพสต์ไว้ใน Extensions Google Group กำหนดการของ Chrome จะแสดงวันที่เผยแพร่เวอร์ชันเสถียรและเบต้า
Prompt API ในส่วนขยาย Chrome
Prompt API สําหรับส่วนขยายพร้อมใช้งานในการทดลองใช้จากต้นทางแล้ว คุณจึงสร้างส่วนขยาย Chrome ที่ใช้ Gemini Nano ซึ่งเป็นโมเดลภาษาที่มีประสิทธิภาพมากที่สุดของเราในเบราว์เซอร์ได้
เข้าร่วมการทดสอบจากต้นทางของ Prompt API ซึ่งทํางานใน Chrome 131 ถึง 136 และแชร์ความคิดเห็นของคุณ ความคิดเห็นของคุณอาจส่งผลต่อวิธีที่เราสร้างและใช้งาน API นี้ในเวอร์ชันในอนาคต รวมถึง AI API ในตัวทั้งหมดได้โดยตรง
บล็อกโพสต์: สิ่งที่เกิดขึ้นในส่วนขยาย Chrome เดือนตุลาคม 2024
ถึงเวลาสรุปข้อมูลเกี่ยวกับส่วนขยาย Chrome อีกรอบแล้ว เรามีข้อมูลอัปเดตที่น่าตื่นเต้นเกี่ยวกับการผสานรวม AI, API ใหม่, กิจกรรม และวิดีโอ อ่านข้อมูลทั้งหมดได้ในสิ่งที่เกิดขึ้นในส่วนขยาย Chrome ฉบับเดือนตุลาคม
เข้าร่วมภารกิจ AI ในตัว
Chrome ได้เปิดตัว Built-in AI Challenge: เราขอเชิญคุณสร้างเว็บแอปพลิเคชันและส่วนขยาย Chrome ที่สร้างสรรค์โดยใช้โมเดลและ API AI ที่ผสานรวมของ Chrome และมีโอกาสลุ้นรับรางวัลมูลค่ารวม $65,000 USD
ลงชื่อสมัครใช้และรับข้อมูลเพิ่มเติมได้ที่เว็บไซต์ Buil-In AI Challenge เราอดใจรอดูสิ่งที่คุณจะสร้างเมื่อใช้ AI ในเว็บ
Chrome 130: action.onUserSettingsChanged
เหตุการณ์ action.onUserSettingsChanged จะพร้อมใช้งานใน Chrome เวอร์ชัน 130 เป็นต้นไป ซึ่งเป็นไปตามข้อเสนอในกลุ่มชุมชน WebExtensions ขอขอบคุณ Microsoft สำหรับการมีส่วนร่วมใน Chromium
Chrome 130: StorageArea.getKeys()
ตั้งแต่ Chrome 130 เป็นต้นไป วิธีการ getKeys() จะพร้อมใช้งานในอินเทอร์เฟซ StorageArea ที่ chrome.storage
API ใช้ ซึ่งเป็นไปตามข้อเสนอในกลุ่มชุมชน WebExtensions
Chrome 128: การจับคู่ส่วนหัวของคำตอบในคำขอเครือข่ายแบบประกาศ
ตั้งแต่ Chrome 128 เป็นต้นไป เราจะเพิ่มการรองรับการจับคู่ส่วนหัวคำตอบใน Declarative Net Request API นี่เป็นคําขอที่พบบ่อย โดยเฉพาะสำหรับการจับคู่ส่วนหัว Content-Type และเราได้ออกแบบ API ที่เหมาะสมร่วมกับกลุ่มชุมชน WebExtensions
เราได้อัปเดตการอ้างอิง API ให้รวมช่อง responseHeaders
และ excludedResponseHeaders
ใหม่ คุณสามารถใช้ข้อมูลเหล่านี้เพื่อตรวจหาการมีอยู่และค่าของส่วนหัวที่ระบุ
ในการอัปเดตครั้งนี้ เราได้เพิ่มส่วนการประเมินกฎใหม่ลงในเอกสารประกอบ ซึ่งอธิบายวิธีจับคู่กฎ โดยเฉพาะอย่างยิ่งสำหรับการจับคู่ส่วนหัว กฎจะทำงานได้ก็ต่อเมื่อได้รับส่วนหัวการตอบกลับแล้ว ระบบจึงจะนำกฎเหล่านั้นไปใช้ในภายหลังเมื่อเทียบกับกฎอื่นๆ ซึ่งหมายความว่าคําขอไปถึงเซิร์ฟเวอร์ก่อนที่จะถูกบล็อกหรือเปลี่ยนเส้นทาง
วิดีโอ: สคริปต์เนื้อหาคืออะไร
ดูข้อมูลเกี่ยวกับสคริปต์เนื้อหาในส่วนขยาย Chrome รวมถึงวิธีลงทะเบียน CSS และ JavaScript ให้ทำงานในหน้าเว็บหนึ่งๆ ดูวิดีโอแบบเต็ม
การปรับปรุงนโยบายที่สำคัญ
ทีม Chrome เว็บสโตร์ได้เผยแพร่ชุดการอัปเดตในหน้านโยบายโปรแกรมสำหรับนักพัฒนาแอปที่ออกแบบมาเพื่อส่งเสริมการพัฒนาผลิตภัณฑ์ที่มีคุณภาพสูง ป้องกันพฤติกรรมหลอกลวง และตรวจสอบว่าได้รับความยินยอมจากผู้ใช้ Rebecca Soares ผู้จัดการนโยบายของ Chrome เว็บสโตร์ได้สรุปข้อมูลอัปเดตทั้งหมดไว้ในบล็อกโพสต์ "ส่วนขยาย Chrome: ข้อมูลอัปเดตที่สำคัญเกี่ยวกับนโยบาย"
บล็อกโพสต์: การเปลี่ยนแปลงในส่วนขยาย Chrome เดือนกรกฎาคม 2024
ในช่วง 3 เดือนที่ผ่านมา เราได้เปิดตัวการอัปเดตและฟีเจอร์ใหม่ๆ ที่สำคัญหลายรายการ รวมถึงการเริ่มเลิกใช้งาน Manifest V2 อัปเดตข่าวสารในมีอะไรใหม่ในส่วนขยาย Chrome ฉบับเดือนกรกฎาคม
วิดีโอ: โค้ดที่โฮสต์จากระยะไกลคืออะไร
Patrick จากทีมส่วนขยาย Chrome อธิบายแนวคิดของโค้ดที่โฮสต์จากระยะไกล (RHC) ในส่วนขยาย Chrome ดูสาเหตุที่ระบบไม่อนุญาตให้ใช้ RHC อีกต่อไป วิธีตรวจหา และสิ่งที่ต้องทำหากต้องอัปเดตส่วนขยาย ดูวิดีโอแบบเต็ม
Chrome 127: action.openPopup API ใหม่
ตั้งแต่ Chrome 127 เป็นต้นไป action.openPopup
API จะพร้อมใช้งานสำหรับส่วนขยายทั้งหมด ก่อนหน้านี้ฟีเจอร์นี้ใช้ได้เฉพาะใน Canary หรือกับส่วนขยายที่นโยบายติดตั้งเท่านั้น
วิดีโอ: สัมภาษณ์ทีมความน่าเชื่อถือและความปลอดภัย
ทีม DevRel ของส่วนขยาย Chrome ได้พูดคุยกับทีมความน่าเชื่อถือและความปลอดภัยซึ่งเป็นผู้นำการตรวจสอบใน Chrome เว็บสโตร์เพื่อตอบคําถามของคุณ ดูวิดีโอแบบเต็ม
บล็อกโพสต์: เริ่มเลิกใช้งานไฟล์ Manifest V2
ตั้งแต่วันที่ 3 มิถุนายนเป็นต้นไปในช่องทาง Chrome Beta, Dev และ Canary หากผู้ใช้ยังคงติดตั้งส่วนขยาย Manifest V2 อยู่ ผู้ใช้บางรายจะเริ่มเห็นแบนเนอร์คำเตือนเมื่อไปที่หน้าการจัดการส่วนขยาย - chrome://extensions - ซึ่งแจ้งให้ทราบว่าระบบจะไม่รองรับส่วนขยาย (Manifest V2) บางรายการที่ผู้ใช้ติดตั้งไว้อีกต่อไปในเร็วๆ นี้ อ่านข้อมูลเพิ่มเติมในประกาศอย่างเป็นทางการ
การอัปเดต UI ของแผงด้านข้าง
เมื่อเร็วๆ นี้เราได้ทําการเปลี่ยนแปลงบางอย่างกับ UI ของแผงด้านข้าง ซึ่งรวมถึงการเพิ่มไอคอนปักหมุดและนําไอคอนแผงด้านข้างส่วนกลางออก อ่านเพิ่มเติมใน PSA และดูเอกสารประกอบและตัวอย่างที่อัปเดตแล้วของเรา
บล็อกโพสต์: ส่วนขยาย Chrome ที่ Google I/O 2024
Google I/O ผ่านไปแล้ว และเราก็ได้สรุปข้อมูลอัปเดตที่น่าตื่นเต้นทั้งหมดเกี่ยวกับส่วนขยายแล้ว โปรดไปที่ YouTube เพื่อดูวิดีโอแบบเต็มและอ่านบล็อกโพสต์ของเราเพื่อดูไฮไลต์บางส่วน
ข้ามการตรวจสอบสำหรับการเปลี่ยนแปลงคำขอเครือข่ายแบบประกาศที่มีสิทธิ์
ตอนนี้ Chrome เว็บสโตร์ให้คุณข้ามการตรวจสอบสำหรับการเปลี่ยนแปลงที่มีสิทธิ์เมื่อใช้ Declarative Net Request API ดูข้อมูลเพิ่มเติมเกี่ยวกับการมีสิทธิ์และวิธีเลือกใช้ได้ในเอกสารประกอบของ Chrome เว็บสโตร์
DeploymentPercentage ที่มีอยู่ใน Chrome เว็บสโตร์ API
เมื่อเร็วๆ นี้ เราได้อัปเดตเอกสารประกอบของ Chrome Web Store API เพื่อรวมข้อมูลเกี่ยวกับ deployPercentage
ซึ่งให้คุณกําหนดเปอร์เซ็นต์ของการติดตั้งใช้งานแบบเปิดตัวบางส่วนได้ ดูข้อมูลเกี่ยวกับ deployPercentage
Chrome 126: ช่วงทดลองใช้จากต้นทางในส่วนขยาย
Chrome 126 เปิดตัวช่อง manifest.json ใหม่ trial_tokens
ซึ่งให้คุณเลือกใช้ช่วงทดลองใช้จากต้นทางและช่วงทดลองเลิกใช้งานในแพลตฟอร์มส่วนขยายทั้งหมดได้ อ่านข้อมูลเพิ่มเติมในคู่มือ
บล็อกโพสต์: มีอะไรเกิดขึ้นบ้างในส่วนขยาย Chrome - เมษายน 2024
เราได้เผยแพร่สิ่งที่เกิดขึ้นในส่วนขยาย Chrome ฉบับใหม่ โพสต์นี้จะกล่าวถึงสิ่งที่ทีมส่วนขยายได้ดำเนินการในช่วงหลายเดือนที่ผ่านมา ซึ่งรวมถึงการย้อนกลับเวอร์ชันใน Chrome เว็บสโตร์ การรองรับการตรวจสอบสิทธิ์ Firebase ที่ดียิ่งขึ้น การเปิดตัวและการอัปเดต API เพิ่มเติม
การย้อนกลับเวอร์ชันในหน้าแดชบอร์ดสำหรับนักพัฒนาแอปของ Chrome เว็บสโตร์
เปลี่ยนกลับไปใช้เวอร์ชันที่เผยแพร่ก่อนหน้านี้ในส่วนขยายของคุณใน Chrome เว็บสโตร์ได้โดยไม่ต้องมีการตรวจสอบเพิ่มเติม อ่านข้อมูลเพิ่มเติมได้ในบล็อกโพสต์และเอกสารประกอบ
Chrome 124: DocumentScan API ขั้นสูง
ตอนนี้ documentScan
API ขั้นสูงพร้อมให้ใช้งานใน ChromeOS เพื่อค้นหาและเรียกข้อมูลรูปภาพจากเครื่องสแกนเอกสารที่แนบมาแล้ว
Chrome 124: การรองรับ WebGPU ใน Service Worker
ตั้งแต่ Chrome 124 เป็นต้นไป บริการเวิร์กเกอร์รองรับ WebGPU หากต้องการเริ่มต้นใช้งานอย่างรวดเร็ว ให้ดูตัวอย่างส่วนขยาย WebGPU
Chrome 123: Events API รองรับการกรองตามบล็อก CIDR
ตอนนี้ Events API รองรับการกรองตามบล็อก Classless Inter-Domain Routing (CIDR) แล้ว บล็อก CIDR คือชุดที่อยู่ IP ที่แชร์คำนำหน้าเครือข่ายและจำนวนบิตเดียวกัน ก่อนหน้านี้ นักพัฒนาซอฟต์แวร์ที่ต้องการกรองที่อยู่ IP หลายรายการจำเป็นต้องกำหนดค่ากฎตัวกรองสำหรับที่อยู่แต่ละรายการในช่วงที่บล็อก ตอนนี้เมื่อส่วนขยายเรียกใช้
addListener()
กฎที่ส่งผ่านหมายความว่าตัวจัดการเหตุการณ์จะเรียกใช้ก็ต่อเมื่อส่วนโฮสต์ของ URL เป็นที่อยู่ IP และอยู่ในบล็อก CIDR ที่ระบุไว้ในอาร์เรย์
Chrome เว็บสโตร์: อัปเดตข้อกำหนดด้านความยาวชื่อส่วนขยาย
ใน Chrome เว็บสโตร์ ตอนนี้ช่อง "name"
ของส่วนขยายในไฟล์ manifest.json จะมีอักขระได้ไม่เกิน 75 ตัว ก่อนหน้านี้ ภาษาอังกฤษมีจำนวนอักขระได้สูงสุด 45 ตัว และไม่มีข้อจำกัดสำหรับช่อง "name"
ในภาษาอื่นๆ
เดิมทีมีไว้เพื่อรองรับความแตกต่างทางวัฒนธรรมและภาษาที่อาจไม่สามารถแสดงด้วยอักขระจำนวนเท่ากันได้ แต่นักพัฒนาแอปจำนวนไม่น้อยได้ละเมิดฟีเจอร์นี้เพื่อสแปมร้านค้า ด้วยเหตุนี้ เราจึงขอแนะนำขีดจำกัดใหม่โดยรวมโดยเพิ่มเป็น 75 อักขระ ขีดจำกัดนี้ครอบคลุมส่วนขยายเกือบทั้งหมดใน Store ในปัจจุบัน ดังนั้นคุณจึงไม่จำเป็นต้องดำเนินการใดๆ เนื่องจากการเปลี่ยนแปลงนี้ หากคุณพยายามอัปโหลดส่วนขยายที่มีชื่อยาวเกินขีดจำกัดสูงสุด ร้านค้าจะบล็อกการอัปโหลด
บล็อกโพสต์: เส้นทางของ eyeo ในการทดสอบการระงับ Service Worker
ในโพสต์นี้จากทีม Extension Engine ของ eyeo เราจะพูดถึงปัญหาการทดสอบโปรแกรมรันไทม์ของบริการส่วนขยาย ใน Manifest V2 ส่วนขยายจะอยู่ในหน้าพื้นหลัง ซึ่งจะทำงานตลอดอายุการใช้งานของส่วนขยาย Manifest V3 จะใช้ Service Worker แทน ส่วน Service Worker ออกแบบมาเพื่อรักษาทรัพยากรโดยการปิดระบบเมื่อไม่จำเป็น ซึ่งทำให้เกิดความท้าทายบางอย่างในการทดสอบ โพสต์นี้อธิบายวิธีที่ eyeo จัดการกับปัญหาเหล่านี้
Chrome 123: ตอนนี้การปลุกจะทำงานเมื่ออุปกรณ์อยู่ในโหมดสลีป
การปลุกที่ตั้งค่าโดยใช้ chrome.alarms
API จะไม่มีการเลื่อนเวลาอีกต่อไปเมื่ออุปกรณ์เข้าสู่โหมดสลีป เมื่ออุปกรณ์ตื่นขึ้น การปลุกจะทำงานเพียงครั้งเดียว ไม่ว่าคุณจะพลาดการปลุกไปกี่ครั้งก็ตาม ตัวอย่างเช่น สมมติว่าตั้งปลุกให้ดังขึ้นทุกชั่วโมงและอุปกรณ์ที่เปิดอยู่อยู่ในโหมดสลีปตั้งแต่เวลา 00:55 น. ถึง 02:05 น. เฉพาะการปลุกตอน 02:00 น. เท่านั้นที่จะทริกเกอร์เหตุการณ์ onAlarm
โดยจะทํางานใกล้กับเวลา 02:00 น. มากที่สุด และทันทีที่อุปกรณ์ตื่นขึ้นหากอยู่ในโหมดสลีป
การเปลี่ยนแปลงนี้จะทำให้ Chrome ทำงานสอดคล้องกับลักษณะการทำงานที่ตกลงกันในกลุ่มชุมชนส่วนขยายเว็บ
บล็อกโพสต์: การเปลี่ยนแปลงลักษณะการทํางานของ bfcache ที่มีพอร์ตข้อความส่วนขยาย
Back-Forward Cache (bfcache) คือการเพิ่มประสิทธิภาพเบราว์เซอร์ที่ช่วยให้ไปยังส่วนต่างๆ แบบย้อนกลับและไปข้างหน้าได้ทันที ตั้งแต่ Chrome 123 เป็นต้นไป เมื่อเก็บหน้าที่มีพอร์ตส่วนขยายแบบเปิดไว้ใน bfcache ระบบจะปิดช่องทางข้อความ ซึ่งหมายความว่าจะไม่มีการส่งข้อความไปยังหน้าดังกล่าว
ดังนั้น สคริปต์ส่วนขยายจึงควรรอเหตุการณ์ในวงจร เช่น
onDisconnect
และสร้างการเชื่อมต่อใหม่เมื่อมีการกู้คืนหน้าเว็บจาก BFCache
ดูข้อมูลเพิ่มเติมและโค้ดตัวอย่างได้ที่การเปลี่ยนแปลงลักษณะการทำงานของ BFCache กับพอร์ตข้อความส่วนขยาย
Chrome 122: การรองรับ Promise ใน API ของส่วนขยายแบบไม่พร้อมกัน
เราได้ติดตั้งใช้งานการรองรับ Promise สําหรับเมธอดของ Extension API แบบแอซิงโครนัสทั้งหมดแล้ว การดำเนินการนี้ทำขึ้นเพื่อปรับปรุงเมธอด API ให้ทันสมัยขึ้นด้วยการเพิ่มประสิทธิภาพการทํางานแบบไม่สอดคล้องกัน มีวิธีหลายวิธี (เช่น desktopCapture.chooseDesktopMedia()
) ที่ยังคงรองรับ Callback เท่านั้นเนื่องจากแพลตฟอร์มปัจจุบันใช้กับ Promises ไม่ได้ ระบบยังคงรองรับการเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง หากคุณพบคำสัญญาที่ล้มเหลว
โปรดรายงานข้อบกพร่อง
คำแนะนำใหม่สำหรับการสื่อสารแบบเรียลไทม์
เราเพิ่งเผยแพร่คำแนะนำเกี่ยวกับตัวเลือกแบบเรียลไทม์ในส่วนขยาย การอัปเดตแบบเรียลไทม์เป็นเส้นทางการสื่อสารที่รวดเร็วจากเซิร์ฟเวอร์ไปยังการติดตั้งส่วนขยายโดยตรง นอกจากนี้ เรายังมีคําแนะนําใหม่ในการใช้ chrome.gcm, Web Push
คำแนะนำและตัวอย่างใหม่: การทดสอบการสิ้นสุดการทำงานของ Service Worker
เราเพิ่งเผยแพร่คู่มือเกี่ยวกับวิธีทดสอบการสิ้นสุดการทำงานของ Service Worker ด้วย Puppeteer ตัวอย่างประกอบแสดงให้เห็นสิ่งนี้ใน Puppeteer และ Selenium
อัปเดตตัวอย่างสำหรับการรับส่งข้อความดั้งเดิม
เราเพิ่งเผยแพร่ตัวอย่างที่อัปเดตสําหรับการรับส่งข้อความที่มาพร้อมระบบ API นี้ช่วยให้ส่วนขยายเริ่มต้นและสื่อสารกับแอปพลิเคชันอื่นได้ ขอขอบคุณ Shubham-Rasal ผู้มีส่วนร่วมใน GitHub ที่ช่วยแก้ปัญหานี้
Chrome 121: พร็อพเพอร์ตี้ lastAccessed ใหม่ใน tabs.Tab
มีการเพิ่มพร็อพเพอร์ตี้ใหม่ชื่อ lastAccessed
ลงในออบเจ็กต์ tabs.Tab
พร็อพเพอร์ตี้นี้ระบุเวลาที่เปิดใช้งานแท็บครั้งล่าสุด ค่าที่แสดงผลจะเป็นมิลลิวินาทีนับจากวันที่ 1 มกราคม ค.ศ. 1970 (Epoch)
Chrome 121: ตอนนี้คีย์ "เบื้องหลัง" ที่ไม่รองรับจะแสดงคำเตือน
ในการเปลี่ยนแปลงจากไฟล์ Manifest V2 เป็นไฟล์ Manifest V3 ได้มีการเปลี่ยนรายการย่อยของคีย์ไฟล์ Manifest "background"
เพื่อรองรับการเปลี่ยนสคริปต์เบื้องหลังด้วย Dependency ของบริการส่วนขยาย ก่อนหน้านี้ การเพิ่มคีย์ "scripts"
, "page"
หรือ "persistent"
ของ Manifest V2 ลงในคีย์ "background"
ของส่วนขยาย Manifest V3 จะทำให้เกิดข้อผิดพลาด การมีคีย์เหล่านี้จะทำให้ระบบแสดงคำเตือน
การดำเนินการนี้เพื่อให้ใช้ไฟล์ Manifest ไฟล์เดียวในชิ้นงานในหลายเบราว์เซอร์ได้ ตามข้อเสนอในกลุ่มชุมชน
Chrome 120: รายละเอียดการปลุกขั้นต่ำลดลงเหลือ 30 วินาที
ตั้งแต่ Chrome เวอร์ชัน 120 เป็นต้นไป ส่วนขยาย Manifest V3 จะใช้ chrome.alarms
API ที่มีความล่าช้าหรือระยะเวลา 30 วินาทีได้ แทนที่จะต้องมีค่า 60 วินาทีขึ้นไป
บล็อกโพสต์: กลับมาดำเนินการต่อเพื่อเปลี่ยนไปใช้ Manifest V3
เราได้อัปเดตไทม์ไลน์การรองรับไฟล์ Manifest V2 แล้ว ดูรายละเอียดได้ในบล็อกโพสต์เดือนพฤศจิกายน 2023
บล็อกโพสต์: การปรับปรุงการรองรับการกรองเนื้อหาใน Manifest V3
ดูข้อมูลเกี่ยวกับวิธีที่เราปรับปรุง declarativeNetRequest API ในบล็อกโพสต์ใหม่ของเรา
บล็อกโพสต์: มีอะไรใหม่ใน Chrome 120 สำหรับส่วนขยาย
Chrome 120 เบต้าเพิ่งเปิดตัวเมื่อไม่นานมานี้ อ่านสรุปข้อมูลอัปเดตที่สำคัญที่เกี่ยวข้องกับนักพัฒนาส่วนขยายได้ในบล็อกโพสต์ใหม่ของเราที่หัวข้อมีอะไรใหม่ใน Chrome 120 สำหรับส่วนขยาย เวอร์ชันนี้ยังเป็นก้าวสําคัญเนื่องจากนํา 2 รายการสุดท้าย (userScripts, ตัวจัดการไฟล์ใน ChromeOS) ออกจากรายการช่องโหว่ที่สําคัญของแพลตฟอร์ม
ประกาศแจ้ง: การเปลี่ยนแปลงการจัดการ URL นโยบายความเป็นส่วนตัวในแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์
ตอนนี้คุณสามารถเพิ่มนโยบายความเป็นส่วนตัวในแดชบอร์ดสำหรับนักพัฒนาแอปที่ระดับสินค้าได้แล้ว ซึ่งจะช่วยให้คุณระบุนโยบายความเป็นส่วนตัวที่แตกต่างกันสำหรับแต่ละรายการได้ อ่านข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ในประกาศ
วิดีโอ: แชทกับ Matt Frisbie
เราเพิ่งเผยแพร่วิดีโอใหม่ในช่อง YouTube ของ Chrome สำหรับนักพัฒนาซอฟต์แวร์ โดยแชทกับผู้เชี่ยวชาญนักพัฒนาซอฟต์แวร์ของ Google และผู้เขียน Matt Frisbie ดูวิดีโอได้ที่นี่
คำแนะนำใหม่เกี่ยวกับการทดสอบส่วนขยาย
เราเพิ่งเผยแพร่คําแนะนําใหม่เกี่ยวกับวิธีเขียนการทดสอบอัตโนมัติสําหรับส่วนขยาย ซึ่งรวมถึงวิธีเขียนการทดสอบหน่วย ทั้งคําแนะนําทั่วไปและบทแนะนําเกี่ยวกับการทดสอบจากต้นทางถึงปลายทาง
บล็อกโพสต์: สิ่งที่เกิดขึ้นในส่วนขยาย Chrome - ตุลาคม 2023
เราเพิ่งเผยแพร่สิ่งที่เกิดขึ้นในส่วนขยาย Chrome ฉบับที่ 2 โพสต์นี้กล่าวถึงสิ่งที่ทีมส่วนขยายทําในช่วง 2-3 เดือนที่ผ่านมา ซึ่งรวมถึงการแก้ไขปัญหาความเสถียรของ Service Worker และการพัฒนาอย่างต่อเนื่องเพื่อปิดช่องโหว่ทั้งหมดของแพลตฟอร์ม MV3 นอกจากนี้ เรายังแชร์ข้อมูลเกี่ยวกับ API ที่กำลังจะเปิดตัวที่น่าสนใจด้วย เช่น Reading List API และ User Scripts API
เพิ่มขีดจํากัดของชุดกฎแบบคงที่ใน Declarative Net Request API
จากความคิดเห็นในกลุ่มชุมชนของส่วนขยายเว็บ เราจึงเพิ่มขีดจํากัดของชุดกฎแบบคงที่ที่เปิดใช้จาก 10 เป็น 50 นอกจากนี้ เรายังเพิ่มจำนวนกฎชุดคงที่ทั้งหมดที่อนุญาตจาก 50 เป็น 100 รายการ ฟีเจอร์นี้พร้อมใช้งานใน Canary
ปรับปรุงคำแนะนำเกี่ยวกับโค้ดที่โฮสต์จากระยะไกล
ข้อกำหนดสำหรับไฟล์ Manifest V3 คือส่วนขยายจะใช้โค้ดที่โฮสต์จากระยะไกลไม่ได้อีกต่อไป แม้ว่าข้อมูลนี้จะอยู่ในคำแนะนำในการย้ายข้อมูลตั้งแต่ต้น แต่เราคิดว่าควรปรับปรุงคำแนะนำเกี่ยวกับปัญหานี้ ตอนนี้หน้าดังกล่าวมีข้อมูลเพิ่มเติมที่อธิบายสิ่งที่ยังทําได้ใน Manifest V3 และข้อมูลเพิ่มเติมเกี่ยวกับกลยุทธ์ในการอัปเกรด
นอกจากนี้ยังมีข้อมูลอื่นที่เกี่ยวข้องกับการแก้ปัญหาการละเมิดใน Chrome เว็บสโตร์ ส่วนใหม่จะอธิบายสาเหตุทั่วไปที่ส่วนขยายที่มีโค้ดที่โฮสต์จากระยะไกลถูกปฏิเสธ
Chrome 118: ตอนนี้ isUrlFilterCaseSensitive จะตั้งค่าเริ่มต้นเป็นเท็จ
ตั้งแต่ Chrome 118 เป็นต้นไป พร็อพเพอร์ตี้ isUrlFilterCaseSensitive
ใน chrome.declarativeNetRequest API มีการเปลี่ยนแปลงค่าเริ่มต้นเป็น false
หากต้องการใช้ลักษณะการทำงานแบบเก่า คุณสามารถตั้งค่า isUrlFilterCaseSensitive
เป็น true
อย่างชัดเจนในกฎ declarativeNetRequest
เรื่องนี้เป็นไปตามการพูดคุยในกลุ่มชุมชนส่วนขยายเว็บ Firefox และ Safari ได้ใช้การเปลี่ยนแปลงที่คล้ายกันนี้แล้ว
เอกสารประกอบเกี่ยวกับคุกกี้และ API พื้นที่เก็บข้อมูลเว็บ
เราได้เผยแพร่คำแนะนำใหม่เกี่ยวกับวิธีการทำงานของคุกกี้และ API พื้นที่เก็บข้อมูลเว็บในส่วนขยาย Chrome ซึ่งรวมถึงรายละเอียดเกี่ยวกับการเปลี่ยนแปลงคุกกี้และการแบ่งพาร์ติชันพื้นที่เก็บข้อมูลใน Privacy Sandbox ซึ่งเป็นโปรเจ็กต์ต่อเนื่องในการเลิกใช้งานคุกกี้ของบุคคลที่สามผ่านการสร้างชุด API แพลตฟอร์มเว็บใหม่ และรายละเอียดเกี่ยวกับวิธีการทำงานของ API เหล่านี้ในส่วนขยาย
ตัวอย่างชิ้นงานค้นหาได้แล้ว
เมื่อเร็วๆ นี้เราได้สร้างหน้าเว็บที่ให้คุณค้นหาตัวอย่างส่วนขยาย Chrome หน้าค้นหามีตัวเลือกหลายรายการ ช่องค้นหาช่วยให้คุณค้นหาข้อความในชื่อตัวอย่างได้ คุณจำกัดการค้นหาตามสิทธิ์หรือ API ของส่วนขยายได้ ตัวกรองเพิ่มเติมช่วยให้คุณจำกัดการค้นหาเฉพาะ API หรือตัวอย่างฟังก์ชันการทำงาน (Use Case) ได้
หน้าตัวอย่างใหม่นี้สร้างขึ้นโดย Xuezhou Dai ผู้เข้าร่วม Google Summer of Code ซึ่งเป็นผู้มีส่วนร่วมในตัวอย่างใหม่หลายรายการด้วย คุณสามารถอ่านเกี่ยวกับประสบการณ์ของทีมในช่วงซัมเมอร์ที่ผ่านมาได้ในโพสต์ในบล็อกของเรา
ตัวอย่างโค้ดของเราจะยังคงมีให้บริการบน GitHub สำหรับการโคลนหรือแยกไปใช้งานต่อได้ เช่นเดียวกับที่ผ่านมา
Chrome 118: การเปลี่ยนแปลงการเปิดไฟล์: URL ของรูปแบบ
ตั้งแต่ Chrome 118 เป็นต้นไป ส่วนขยายจะต้องเปิดใช้การตั้งค่า "อนุญาตให้เข้าถึง URL ของไฟล์" จากหน้า chrome://extensions
เพื่อเปิด URL รูปแบบ file:// โดยใช้ Tabs หรือ Windows API คุณสามารถตรวจสอบสิทธิ์เข้าถึงนี้แบบเป็นโปรแกรมได้โดยเรียกใช้ chrome.extension.isAllowedFileSchemeAccess()
โดย Firefox จำกัด URL ของไฟล์อยู่แล้วและ Safari รองรับการเปลี่ยนแปลงนี้ อ่านข้อมูลเพิ่มเติมได้ที่โพสต์ใน Google Group ของส่วนขยาย
Chrome 117: ขยายการปกป้อง URL ในการนำทางของ API ส่วนขยาย
ก่อนหน้านี้การไปยังส่วนต่างๆ เกิดขึ้นจากการเรียก API ส่วนขยายสำหรับ tabs.update()
, tabs.create()
และ windows.create()
ทำให้เกิดข้อผิดพลาดสำหรับ URL chrome:// บางรายการ นอกจากนี้ยังไม่อนุญาตให้เรียกใช้ tabs.update()
ด้วย URL แบบ JavaScript ด้วย ใน 117 เราได้ขยายการปกป้อง URL ของ JavaScript เหล่านี้ไปยังเมธอด tabs.create()
และเพิ่ม URL chrome:// อีกหลายรายการลงในรายการ URL ที่ไม่อนุญาตซึ่งมีผลกับเมธอดทั้งหมดที่กล่าวถึงก่อนหน้านี้
ปรับปรุงคําแนะนําสําหรับ declarativeNetRequest API
chrome.declarativeNetRequest
API จะบล็อกหรือแก้ไขคําขอเครือข่ายโดยระบุกฎแบบประกาศ วิธีนี้ช่วยให้ส่วนขยายแก้ไขคำขอเครือข่ายได้โดยไม่ต้องสกัดกั้นและดูเนื้อหาของตน ดังนั้นจึงให้ความเป็นส่วนตัวแก่ผู้ใช้มากขึ้น และใช้งานยากด้วย ด้วยเหตุนี้ เราจึงเขียนคําแนะนําใหม่ในลักษณะที่น่าจะช่วยให้เห็นภาพที่ชัดเจนมากขึ้นเกี่ยวกับวิธีใช้ชุดกฎการประกาศ อ่านส่วนใหม่ได้ที่ลิงก์ด้านบน
การใช้บัญชี Google Analytics กับ Chrome เว็บสโตร์
Chrome เว็บสโตร์มีการผสานรวมกับ Google Analytics ซึ่งช่วยให้คุณดูข้อมูลวิเคราะห์สำหรับข้อมูลผลิตภัณฑ์ใน Chrome เว็บสโตร์ได้นอกเหนือจากข้อมูลพร็อพเพอร์ตี้ที่แสดงในหน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ ดูข้อมูลเพิ่มเติมได้ที่การใช้บัญชี Google Analytics กับ Chrome เว็บสโตร์
Chrome 115: DevTools ข้ามสคริปต์เนื้อหาโดยค่าเริ่มต้น
ตอนนี้สคริปต์เนื้อหาที่แทรกเข้าไปอยู่ในรายการละเว้นของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์โดยค่าเริ่มต้นแล้ว วิธีนี้ไม่ส่งผลกระทบต่อเบรกพอยท์ แต่หมายความว่าสคริปต์เนื้อหาจะถูกข้ามผ่านระหว่างการแก้ไขข้อบกพร่องและข้อยกเว้นจากสคริปต์เหล่านี้จะถูกละเว้น เมื่อสคริปต์เนื้อหาเปิดอยู่ในแท็บแหล่งที่มา แบนเนอร์จะแจ้งให้คุณทราบหากตัวเลือกนี้เปิดอยู่ และมีตัวเลือกให้นำสคริปต์เนื้อหาออกจากรายการละเว้น หากต้องการปิดลักษณะการทำงานนี้ ให้เปิดเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ แล้วไปที่การตั้งค่า จากนั้นไปที่รายการที่ละเว้น ดูข้อมูลเพิ่มเติมได้ที่มีอะไรใหม่ในเครื่องมือสำหรับนักพัฒนาเว็บ
Chrome 116 เบต้า: มีอะไรมากกว่าที่จะแสดงที่นี่
Chrome 116 เปิดตัวครั้งใหญ่สำหรับส่วนขยายต่างๆ ตอนนี้คุณเปิดแผงด้านข้างแบบเป็นโปรแกรมได้แล้ว วิธีการใหม่ช่วยให้คุณทราบว่ามีเอกสารที่ใช้งานอยู่นอกหน้าจอหรือไม่ Service Worker ได้รับการปรับปรุงหลายอย่าง เราได้เขียนบล็อกโพสต์เพื่อสรุปการปรับปรุงเหล่านี้เนื่องจากมีการปรับปรุงมากพอในเวอร์ชัน 116 Chrome 116 อยู่ในรุ่นเบต้าตั้งแต่วันที่ 19 กรกฎาคม
บล็อกโพสต์: สิ่งที่เกิดขึ้นในส่วนขยาย Chrome
เราเพิ่งเผยแพร่ภาพรวมการเปลี่ยนแปลงและการปรับปรุงส่วนขยายในปีนี้ โพสต์นี้กล่าวถึงฟีเจอร์ใหม่ที่สำคัญของปีนี้ ซึ่งรวมถึง Side Panel API, การปรับปรุง Service Worker และเอกสารที่อยู่นอกหน้าจอ นอกจากนี้ คุณยังจะได้ดูตัวอย่างสิ่งที่เรากำลังดำเนินการในไตรมาสนี้ด้วย บทความจะแสดงสิ่งต่างๆ มากมาย พร้อมด้วยลิงก์ไปยังบทความทั้งหมด
คำแนะนำและตัวอย่างใหม่: ดูวิธีใช้ Google Analytics 4 ในส่วนขยาย Chrome
เราได้เผยแพร่คําแนะนําและตัวอย่างใหม่เกี่ยวกับ Google Analytics และตําแหน่งทางภูมิศาสตร์ ดังนี้
- คำแนะนำ Google Analytics เวอร์ชันอัปเดตที่อธิบายวิธีใช้ Google Analytics 4 ในส่วนขยาย Chrome นอกจากนี้ เรายังได้เพิ่มตัวอย่าง Google Analytics 4 ที่ใช้งานได้ไปยังที่เก็บตัวอย่าง Github ด้วย ไปที่
google-analytics.js
เพื่อดูรหัสที่เกี่ยวข้องกับ Google Analytics - คู่มือตำแหน่งทางภูมิศาสตร์ใหม่และตัวอย่าง 3 รายการที่สาธิตวิธีเข้าถึงตำแหน่งทางภูมิศาสตร์ใน Service Worker, สคริปต์เนื้อหา, ป๊อปอัป และแผงด้านข้าง
Chrome 115: ระบุหลายเหตุผลใน chrome.offscreen.createDocument()
คุณสามารถระบุ enum ของ reason
ได้หลายรายการเมื่อเรียกใช้ chrome.offscreen.createDocument()
ใช้ตัวเลือกนี้เมื่อเอกสารนอกหน้าจอจะใช้เพื่อวัตถุประสงค์หลายอย่าง โดยเบราว์เซอร์จะใช้เหตุผลที่ระบุเพื่อกำหนดอายุการใช้งานของเอกสารที่อยู่นอกหน้าจอ
เครื่องมือใหม่: เครื่องมือทดสอบการอัปเดตส่วนขยาย
เราเพิ่งเปิดตัวเครื่องมือทดสอบการอัปเดตส่วนขยาย ซึ่งเป็นเซิร์ฟเวอร์การอัปเดตส่วนขยายในเครื่องที่ใช้ทดสอบการอัปเดตส่วนขยาย Chrome ในระหว่างการพัฒนาในเครื่อง รวมถึงการให้สิทธิ์ เครื่องมือจะแสดงขั้นตอนการอัปเดตของผู้ใช้ รวมถึงการปิดใช้ส่วนขยายจนกว่าผู้ใช้จะให้สิทธิ์ที่ขอใหม่ เครื่องมือนี้มีประโยชน์อย่างยิ่งในการจําลองการเปลี่ยนแปลงสิทธิ์ที่ขอเมื่ออัปเดตส่วนขยายจากไฟล์ Manifest V2 เป็นไฟล์ Manifest V3
Chrome 114: New Side Panel API
ขอแนะนํา Side Panel API ใหม่ ซึ่งเป็นแพลตฟอร์มที่มาพร้อมแอปต่างๆ ซึ่งช่วยให้ผู้ใช้เข้าถึงเครื่องมือต่างๆ ควบคู่ไปกับเนื้อหาที่กําลังเรียกดู ดูข้อมูลเพิ่มเติมได้ที่เอกสารอ้างอิง API ของแผงด้านข้าง นอกจากนี้ เรายังได้เพิ่มตัวอย่างแผงด้านข้างจำนวนมากลงในที่เก็บตัวอย่าง GitHub นอกจากนี้ เรายังแชร์ข้อมูลเพิ่มเติมเกี่ยวกับแผงด้านข้างในบล็อกโพสต์ใหม่เรื่องการออกแบบประสบการณ์ของผู้ใช้ที่ดียิ่งขึ้นด้วย Side Panel API ใหม่ นอกจากนี้ เรายังได้ตรวจสอบนโยบายหลักเกณฑ์ด้านคุณภาพและแนวทางปฏิบัติแนะนำเพื่อให้คำแนะนำเพิ่มเติมเกี่ยวกับการสร้างส่วนขยายแผงด้านข้างที่มีคุณภาพสูง
ความคิดเห็นของคุณมีความสำคัญต่อการสร้าง API นี้ โปรดแชร์ความคิดเห็นและคำขอฟีเจอร์ใน chromium-groups โปรดรอติดตามข้อมูลอัปเดตใหม่ๆ ขณะที่เราปรับปรุง Side Panel API อย่างต่อเนื่อง
ตัวอย่างใหม่: WASM ในส่วนขยาย
เรามีตัวอย่างใหม่ 2 รายการที่สาธิตวิธีใช้ WASM ในส่วนขยาย ดังนี้
- การใช้ WASM ใน Manifest V3 แสดงวิธีการทั่วไปในการรวมโมดูล WASM
- การใช้ WASM เป็นโมดูลใน Manifest V3 แสดงวิธีใช้ในโมดูล
ขอขอบคุณ @daidr ผู้ร่วมให้ข้อมูลของ GitHub สำหรับตัวอย่างเหล่านี้
คำแนะนำในการย้ายข้อมูลไฟล์ Manifest V3 ที่อัปเดต
เราได้อัปเดตส่วนปัญหาที่ทราบในคำแนะนำการย้ายข้อมูลไฟล์ Manifest V3 โดยเพิ่มรายการช่องโหว่ของแพลตฟอร์มส่วนขยายที่อัปเดตใหม่ ซึ่งเราตั้งใจจะปิดก่อนที่จะประกาศไทม์ไลน์การเลิกใช้งานไฟล์ Manifest V2 ใหม่
การบันทึกเสียงและวิดีโอด้วย Manifest V3
เราเพิ่งเผยแพร่บทความใหม่ชื่อการบันทึกเสียงและการจับภาพหน้าจอ ซึ่งครอบคลุมการบันทึกเสียงหรือวิดีโอจากแท็บ หน้าต่าง หรือหน้าจอในไฟล์ Manifest V3 บทความนี้อธิบายวิธีการบันทึกหลายวิธีที่เกี่ยวข้องกับ chrome.tabCapture
API และฟังก์ชัน getDisplayMedia()
Chrome 114: เพิ่มโควต้า storage.local
เราได้เพิ่มโควต้าสำหรับพร็อพเพอร์ตี้ storage.local
เป็นประมาณ 10 MB แล้ว การเปลี่ยนแปลงนี้ได้รับการตกลงไว้ในกลุ่มชุมชนส่วนขยายเว็บ ซึ่งจะทำให้ storage.local
สอดคล้องกับ storage.session
ที่มีการเปลี่ยนแปลงใน Chrome 112
บทแนะนำและความช่วยเหลือเกี่ยวกับผู้ปฏิบัติงานของบริการส่วนขยายใหม่
Service Worker เป็นส่วนสำคัญของส่วนขยาย Chrome เราเพิ่งเผยแพร่บทแนะนำที่อธิบายพื้นฐานเกี่ยวกับการลงทะเบียน การแก้ไขข้อบกพร่อง และการโต้ตอบกับ Service Worker นอกจากนี้ เรายังได้เพิ่มคู่มือเกี่ยวกับ Service Worker ใหม่ซึ่งอธิบายแนวคิดสําคัญอย่างละเอียดยิ่งขึ้น เราจะขยายส่วนนี้ในอีกไม่กี่เดือนข้างหน้า
เคล็ดลับเพิ่มเติมในการแก้ปัญหาการละเมิดในเว็บสโตร์
เราได้เพิ่มคำแนะนำใหม่ๆ ใน 2 ด้านเพื่อช่วยในการเผยแพร่ใน Chrome เว็บสโตร์ คำแนะนำสำหรับฟังก์ชันการทำงานขั้นต่ำจะมุ่งเน้นไปที่การให้สิทธิประโยชน์ต่างๆ แก่ผู้ใช้และยกระดับประสบการณ์การท่องเว็บของผู้ใช้ หลักเกณฑ์สําหรับโฆษณาแอฟฟิลิเอตมีไว้เพื่อให้ผู้ใช้ทราบเกี่ยวกับส่วนขยายที่ใช้ลิงก์หรือโค้ดแอฟฟิลิเอตเพื่อสร้างรายได้ และเพื่อให้ผู้ใช้มีสิทธิ์ควบคุมบางอย่างโดยกำหนดให้ผู้ใช้ดำเนินการก่อนรวม
วิธีการใหม่สำหรับ Extension Manifest Converter
เราได้เขียนไฟล์ README ของ Extension Manifest Converter ใหม่เพื่อให้คุณเห็นสิ่งที่ต้องทำหลังเรียกใช้เครื่องมือได้ง่ายขึ้น ตัวแปลงจะช่วยย้ายข้อมูลส่วนขยายที่สร้างใน Manifest V2 ไปยัง Manifest V3 README ใหม่อธิบายสิ่งที่เครื่องมือทำโดยใช้คำที่ตรงกับคำในรายการตรวจสอบของคู่มือการย้ายข้อมูลเป็นอย่างมาก ตัวแปลงไม่ได้ทำทุกอย่าง แต่ช่วยขจัดงานจำนวนมากที่ไม่จําเป็นต้องอาศัยการตัดสินของมนุษย์
Chrome 113: เหตุผลใหม่สำหรับเอกสารนอกหน้าจอ
เราได้เพิ่มประเภทเหตุผลใหม่ 2 ประเภทลงใน Offscreen Documents API ใช้ LOCAL_STORAGE
เพื่อเข้าถึง localStorage API ของแพลตฟอร์มเว็บ ใช้ WORKER
เมื่อสร้างผู้ปฏิบัติงานบนเว็บ
Google Analytics 4 มาอยู่ในหน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์แล้ว
หน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ Chrome เว็บสโตร์รองรับ Google Analytics 4 (GA4) แล้ว เราได้ลดความซับซ้อนของการตั้งค่า Google Analytics และทําให้การจัดการการเข้าถึงสําหรับผู้เผยแพร่โฆษณากลุ่มตรงไปตรงมามากขึ้น หากก่อนหน้านี้คุณใช้ Google Universal Analytics เพื่อติดตามกิจกรรมในข้อมูลผลิตภัณฑ์ใน Store คุณจะต้องดำเนินการภายในวันที่ 1 กรกฎาคม 2023 เพื่อให้แน่ใจว่าจะได้รับข้อมูลเกี่ยวกับข้อมูลผลิตภัณฑ์ใน Store ต่อไป ดูข้อมูลเพิ่มเติมได้ที่โพสต์ใน Google Group ของส่วนขยาย Chromium
File Handling API พร้อมให้ใช้งานใน ChromeOS แล้ว
File Handler API พร้อมให้ทดลองใช้แล้วใน ChromeOS เวอร์ชัน 112 และ 113 ของ Canary ซึ่งช่วยให้ส่วนขยายใน ChromeOS เปิดไฟล์ที่มีประเภท MIME และนามสกุลไฟล์ที่ระบุได้ หากต้องการใช้การจัดการไฟล์ ให้เพิ่มชุดกฎลงใน manifest.json
ฟีเจอร์นี้ทํางานเหมือนกับ Progressive Web App ดูข้อมูลเพิ่มเติมได้ที่บทความอื่นๆ ในเว็บไซต์นี้
วิธีเปิดใช้การจัดการไฟล์
- เริ่มต้นใน 112, เปิด Chrome โดยใช้แฟล็ก
--enable-features=ExtensionWebFileHandlers
โดยเริ่มจากปี 112 - เริ่มตั้งแต่ 113 ให้วาง
os://flags/#extension-web-file-handlers
ลงในแถบอเนกประสงค์ของ Chrome แล้วเลือก "เปิดใช้" จากเมนูแบบเลื่อนลง
เราหวังว่าจะเปิดตัวฟีเจอร์นี้ใน Chrome 115 ช่วงปลายเดือนมิถุนายน โปรดรอติดตามข้อมูลอัปเดต
ตัวอย่างใหม่: การประกาศแบบไดนามิกและการแทรกแบบเป็นโปรแกรม
เราได้สร้างตัวอย่างใหม่สําหรับ chrome.scripting
API โดยแสดงให้เห็นถึงการประกาศแบบไดนามิกที่มีการลงทะเบียนสคริปต์เนื้อหาขณะรันไทม์ และการแทรกแบบเป็นโปรแกรมที่มีการเรียกใช้สคริปต์ในแท็บที่เปิดอยู่แล้ว
ตัวอย่างใหม่: กรณีการใช้งานคําขอเครือข่ายแบบประกาศ
มีตัวอย่างใหม่ 3 รายการที่สาธิต Declarative Net Request API แต่ละรายการสาธิตการใช้งานกรณีการใช้งานเดียว รายการแรกแสดงวิธีบล็อกคุกกี้ ส่วนอีก 2 รายการที่เหลือแสดงการบล็อกและการเปลี่ยนเส้นทาง URL
Chrome 112: เพิ่มโควต้า storage.session
จาก Chrome 112 โควต้าสำหรับพร็อพเพอร์ตี้ storage.session
ได้เพิ่มขึ้นเป็นประมาณ 10 MB เรื่องนี้ได้รับการยอมรับในกลุ่มชุมชนส่วนขยายเว็บที่ https://github.com/w3c/webextensions/issues/350
Chrome 109: เอกสารนอกหน้าจอ
เอกสารที่อยู่นอกหน้าจอพร้อมใช้งานแล้วในส่วนขยายไฟล์ Manifest V3 ซึ่งช่วยให้ช่วยเปลี่ยนจากหน้าพื้นหลังไปเป็นโปรแกรมทำงานของบริการส่วนขยายได้ โดยให้การสนับสนุนฟีเจอร์และ API ที่เกี่ยวข้องกับ DOM โปรดอ่านบล็อกโพสต์เพื่อดูข้อมูลเพิ่มเติม
Chrome 110: มีการเปิดใช้ส่วนขยายไหม
เมธอด chrome.action.isEnabled()
จะตรวจสอบแบบเป็นโปรแกรมว่าเปิดใช้ส่วนขยายในแท็บหนึ่งๆ แล้วหรือยัง ซึ่งจะช่วยคุณประหยัดในการรักษาสถานะเปิดใช้งานของแท็บ เมธอดใหม่นี้จะรับรหัสแท็บและการอ้างอิงไปยังการเรียกกลับ และแสดงผลเป็นบูลีน แต่มีข้อจำกัด 1 ข้อคือ แท็บที่สร้างโดยใช้ chrome.declarativeContent
จะแสดงผลเป็นเท็จเสมอ
(เมื่อเร็วๆ นี้เนมสเปซ chrome.action
ได้มีวิธีการใหม่ในการควบคุมลักษณะที่ปรากฏของเครื่องหมายส่วนขยาย สำหรับข้อมูลเพิ่มเติม โปรดดูการตั้งค่าสีของป้าย)
Chrome 110: การเปลี่ยนแปลงระยะหมดเวลาของ Service Worker ที่ไม่ได้ใช้งาน
ก่อนหน้านี้ โปรแกรมทำงานของบริการส่วนขยายมักจะปิดตัวหลังจากเวลา 5 นาที เราได้เปลี่ยนลักษณะการทํางานนี้ให้คล้ายกับอายุการใช้งานของ Service Worker บนเว็บมากขึ้น โปรแกรมทำงานของบริการส่วนขยายจะปิดลงหลังจากไม่มีการใช้งานเป็นเวลา 30 วินาที หรือหากกิจกรรมเดียวใช้เวลาประมวลผลนานกว่า 5 นาที ดูข้อมูลเพิ่มเติมได้ที่อายุของ W worker ของบริการส่วนขยายที่นานขึ้น
โพสต์: การหยุดนำไฟล์ Manifest V2 ไว้ชั่วคราว
กําหนดเวลาการเลิกใช้งาน Manifest V2 อยู่ระหว่างตรวจสอบและการทดสอบที่กำหนดเวลาไว้ในช่วงต้นปี 2023 จะถูกเลื่อนออกไป ดูข้อมูลเพิ่มเติมได้ที่อ่านข้อมูลอัปเดตใน Google Group ของส่วนขยาย Chromium
Chrome 110: การตั้งค่าสีป้าย
เนมสเปซ chrome.action
มีเมธอดใหม่ 2 รายการที่ช่วยให้คุณควบคุมป้ายกางเขนส่วนขยายของรูปลักษณ์ได้มากขึ้น เมธอด setBadgeTextColor()
และ getBadgeTextColor()
ช่วยให้ส่วนขยายเปลี่ยนและค้นหาสีข้อความป้ายของไอคอนแถบเครื่องมือได้ เมื่อใช้กับ setBadgeBackgroundColor
และ getBadgeBackgroundColor
วิธีการใหม่เหล่านี้จะช่วยให้คุณบังคับใช้การออกแบบและความสอดคล้องกันของแบรนด์ได้
บล็อกโพสต์: รายละเอียดเพิ่มเติมเกี่ยวกับการเปลี่ยนไปใช้ Manifest V3
เราได้ชี้แจงไทม์ไลน์การเลิกใช้งาน Manifest V2 แล้ว เรายังได้อัปเดตลำดับเวลาการสนับสนุนไฟล์ Manifest V2 เพื่อแสดงข้อมูลนี้ด้วย
อัปเดตเอกสารประกอบ: ปัญหาที่ทราบเกี่ยวกับการย้ายข้อมูลไปยัง Manifest V3
เราได้รวบรวมรายการฟีเจอร์หลักที่อยู่ระหว่างการพัฒนาและข้อบกพร่องที่ยังไม่ได้รับการแก้ไข เป้าหมายของหน้านี้คือช่วยให้นักพัฒนาแอปเข้าใจสถานะปัจจุบันของแพลตฟอร์มและฟีเจอร์ที่มุ่งเน้นได้ดีขึ้นขณะเตรียมพร้อมสำหรับอนาคต
Chrome เว็บสโตร์: นำการอัปโหลดรูปภาพ "การ์ดโปรโมตขนาดใหญ่" ออกแล้ว
Chrome เว็บสโตร์ได้นำ UI การอัปโหลด "การ์ดโปรโมชันขนาดใหญ่" ออกจากแท็บข้อมูลผลิตภัณฑ์ใน Store ในแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์แล้ว การเปลี่ยนแปลงนี้จะไม่ส่งผลต่อประสบการณ์ของผู้ใช้ปลายทาง เนื่องจากรูปภาพเหล่านี้ไม่ได้ใช้ใน UI ของผู้บริโภค ดูรายละเอียดเพิ่มเติมได้ที่โพสต์ส่วนขยาย Chromium นี้
Chrome 106: อนุญาตให้หน้าใน URL รูปแบบ file:// เข้าถึงทรัพยากรที่เข้าถึงได้ทางเว็บ
ต้นทางแบบทึบ เช่น iframe ที่อยู่ในแซนด์บ็อกซ์และการนําเข้าแบบไดนามิกควรเข้าถึงทรัพยากรที่เข้าถึงได้ทางเว็บได้เช่นกัน ตาม crbug.com/1219825#c11
Chrome 106: แก้ไขข้อบกพร่องที่อนุญาตให้ใช้อาร์กิวเมนต์สุดท้ายที่ไม่ถูกต้องในฟังก์ชัน Async API บางรายการ
ก่อนหน้านี้ Manifest V3 ที่เรียกใช้ API แบบแอ็กซิงโครนัสอาจระบุอาร์กิวเมนต์สุดท้ายที่ไม่ถูกต้องและ Chrome จะไม่แสดงข้อผิดพลาด การแก้ไขนี้จะทำให้ Chrome แสดงข้อผิดพลาดและรายงานว่าไม่มีลายเซ็นที่ตรงกันได้อย่างถูกต้อง เราขอแนะนำให้นักพัฒนาซอฟต์แวร์ตรวจสอบข้อผิดพลาดในส่วนขยายใน Canary ในกรณีที่ใช้ลายเซ็นที่ไม่ถูกต้องในการเรียก API โดยไม่ได้ตั้งใจ ซึ่งจะใช้งานไม่ได้หลังจากการแก้ไขข้อบกพร่องนี้
บล็อกโพสต์: ปรับปรุงข้อมูลวิเคราะห์ของ Chrome เว็บสโตร์
Chrome เว็บสโตร์ได้ปรับปรุงประสบการณ์การใช้งานข้อมูลวิเคราะห์รายการสำหรับแดชบอร์ดสำหรับนักพัฒนาแอป Chrome เว็บสโตร์ แดชบอร์ดใหม่เข้าใจได้ง่ายโดยย่อและรวบรวมข้อมูลที่เป็นประโยชน์ที่สุดไว้ที่ด้านหน้า โปรดอ่านบล็อกโพสต์เพื่อดูข้อมูลเพิ่มเติม
Chrome 105: สัญญาสำหรับ Identity API
ตอนนี้ฟังก์ชันใน Identity API รองรับการเรียกใช้แบบ Promise แล้ว โดยมาพร้อมกับการเปลี่ยนแปลงเล็กน้อยที่ Surface สำหรับ identity.getAuthToken()
โดย Return แบบอะซิงโครนัสที่ตั้งค่าเป็นการเรียกใช้ตามสัญญาจะมี "token" และ "grantedScopes" เป็นพารามิเตอร์ในออบเจ็กต์เดียว (ต่างจากเวอร์ชัน Callback ที่ได้รับเป็นอาร์กิวเมนต์ที่แยกต่างหากให้กับ Callback)
Chrome 104: favicons API ใหม่สำหรับ Manifest V3
ตอนนี้ส่วนขยาย Manifest V3 สามารถเข้าถึง Favicon โดยใช้รูปแบบ URL ใหม่ได้แล้ว ซึ่งก็คือ chrome-extension://<id>/_favicon/
โดยที่ chrome://favicons
API ของแพลตฟอร์ม Manifest V2 ดูข้อมูลเพิ่มเติมได้ในเอกสาร Favicon API
การอัปเดตเอกสาร: การเปิดเผยสถานะผู้ค้า/ไม่เป็นผู้ค้าของนักพัฒนาแอป
เพิ่มการระบุตัวตนนักพัฒนาแอปว่าเป็นผู้ค้า/ไม่ใช่ผู้ค้า ซึ่งแจ้งให้นักพัฒนาแอปประกาศสถานะผู้ค้า/ไม่ใช่ผู้ค้าด้วยตนเองอย่างถูกต้อง
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: ช่องไฟล์ Manifest ใหม่ "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
โปรดทราบว่าการดำเนินการนี้ไม่ได้รับประกันว่าสคริปต์จะแทรกก่อนหน้าเว็บโหลด เนื่องจากหน้าเว็บจะโหลดต่อไปขณะที่การเรียก API เกิดขึ้น
Chrome 102: การรองรับ Omnibox API ใน Manifest V3
ตอนนี้คุณใช้ Omnibox API ในส่วนขยายที่อิงตาม Service Worker ได้แล้ว ก่อนหน้านี้ บางเมธอดของ API นี้จะส่งเมื่อมีการเรียกใช้เนื่องจากทรัพยากร Dependency ภายในความสามารถของ DOM
Chrome 102: อนุญาตให้ใช้ wasm-unsafe-eval ใน CSP ของ Manifest V3
ตอนนี้ส่วนขยายไฟล์ Manifest V3 รวม wasm-unsafe-eval
ไว้ในการประกาศ content_security_policy
ได้แล้ว การเปลี่ยนแปลงนี้ช่วยให้ส่วนขยาย Manifest V3 ใช้ WebAssembly ได้
Chrome 102: storage.session API ใหม่
ตอนนี้ส่วนขยายไฟล์ Manifest V3 ใช้ได้ในพื้นที่เก็บข้อมูลหน่วยความจำ storage.session แล้ว
อัปเดตเอกสาร: การค้นพบรายการใน Chrome เว็บสโตร์
การค้นพบใน Chrome เว็บสโตร์แสดงภาพรวมวิธีที่ผู้ใช้ค้นพบรายการต่างๆ ใน Chrome เว็บสโตร์ และวิธีที่ผู้จัดทําการเลือกรายการที่จะแสดง
Chrome 101: ปรับปรุงเงื่อนไขของโดเมน declarativeNetRequest
เงื่อนไขกฎ declarativeNetRequest ได้รับการอัปเดตเพื่อให้ชิ้นงานกําหนดเป้าหมายคำขอได้ดียิ่งขึ้นตามโดเมน "request" และ "initiator" ของคําขอ พร็อพเพอร์ตี้เงื่อนไขที่เกี่ยวข้องคือ initiatorDomains
, excludedInitiatorDomains
, requestDomains
และ excludedRequestDomains
โปรดดูชุดข้อความส่วนขยาย Chromium นี้เพิ่มเติม
Chrome 100: แก้ไขปัญหาเกี่ยวกับ scripting.executeScript() ในแท็บที่สร้างขึ้นใหม่
แก้ไขปัญหาที่เกิดขึ้นมาอย่างยาวนานซึ่งการเรียกใช้ scripting.executeScript()
ในแท็บหรือหน้าต่างที่สร้างขึ้นใหม่อาจไม่สำเร็จ
Chrome 100: พอร์ตการรับส่งข้อความแบบเนทีฟช่วยให้ Service Worker ทำงานต่อไปได้
การเชื่อมต่อกับโฮสต์การรับส่งข้อความในเครื่องโดยใช้ chrome.runtime.connectNative()
ใน Service Worker ของส่วนขยายควรทำให้ Service Worker ใช้งานได้ตราบใดที่พอร์ตเปิดอยู่
Chrome 100: omnibox.setDefaultSuggestion() รองรับ Promise และ Callback
ตอนนี้เมธอด omnibox.setDefaultSuggestion()
จะแสดงผลพรอมต์หรือยอมรับการเรียกกลับเพื่อให้นักพัฒนาแอประบุได้ว่าการตั้งค่าคำแนะนำถูกต้องแล้วเมื่อใด
Chrome 100: การรองรับ i18n.getMessage() ในเวิร์กเกอร์บริการส่วนขยาย
ตอนนี้ระบบรองรับ chrome.i18n.getMessage()
API ในบริบทของ Service Worker ของส่วนขยายแล้ว
Chrome 99: match_origin_as_fallback ใน Canary
ตอนนี้สคริปต์เนื้อหาสามารถระบุคีย์ match_origin_as_fallback
เพื่อแทรกลงในเฟรมที่เกี่ยวข้องกับเฟรมที่ตรงกัน รวมถึงเฟรมที่มี URL about:
, data:
, blob:
และ filesystem:
โปรดดูรายละเอียดในเอกสารประกอบสคริปต์เนื้อหา
Chrome 99: การสนับสนุนโปรแกรมทำงานของบริการส่วนขยายสำหรับไฟล์: รูปแบบใน Canary
ตอนนี้ส่วนขยาย Manifest V2 และ Manifest V3 ที่ใช้ Service Worker สามารถใช้ Fetch API เพื่อขอ URL รูปแบบ file:
ได้แล้ว แต่ผู้ใช้ยังคงต้องเปิดใช้ "อนุญาตให้เข้าถึง URL ไฟล์" สําหรับส่วนขยายในหน้า chrome://extensions
จึงจะเข้าถึง URL รูปแบบ file:
ได้
Chrome 99: สัญญาว่าจะรองรับ Messaging API ใน Canary
เพิ่มการรองรับ Promise ลงใน tabs.sendMessage
, runtime.sendMessage
และ runtime.sendNativeMessage
สำหรับส่วนขยายที่สร้างสำหรับ Manifest V3
อัปเดตเอกสารประกอบ: เอกสารประกอบเกี่ยวกับการตรวจสอบของ Chrome เว็บสโตร์
เพิ่มหน้าอ้างอิงใหม่ที่แสดงภาพรวมของกระบวนการตรวจสอบใน Chrome เว็บสโตร์ และอธิบายวิธีจัดการการบังคับใช้นโยบายโปรแกรมสำหรับนักพัฒนาแอป
Chrome 98: Scripting.exeเสร็จสิ้นScript() และ Scripting.insertCSS() ยอมรับไฟล์หลายไฟล์
ตอนนี้เมธอด executeScript()
และ insertCSS()
ของ Scripting API รองรับไฟล์หลายไฟล์แล้ว ก่อนหน้านี้เมธอดเหล่านี้ต้องใช้อาร์เรย์ที่มีรายการไฟล์รายการเดียว
อัปเดตเอกสาร: การอัปเดตการแก้ปัญหาการละเมิดรีวิว
เราได้อัปเดตหน้าการแก้ปัญหาการละเมิดใน Chrome เว็บสโตร์เพื่อให้คำแนะนำโดยละเอียดเพิ่มเติมแก่นักพัฒนาแอปเกี่ยวกับสาเหตุทั่วไปของการปฏิเสธ
Chrome 96: ขยายสัญญาว่าจะรองรับ API อีก 27 รายการ
การเผยแพร่นี้มีอัปเดตเกี่ยวกับสัญญามากกว่ารุ่นก่อนหน้าอย่างมาก การอัปเดตนี้รวมถึงทั้ง Extensions API ทั่วไปและเฉพาะ ChromeOS ขยายส่วนต่อไปนี้เพื่อดูรายละเอียด
API ส่วนขยาย
ปัจจุบัน API จํานวนหนึ่งรองรับ Promise ใน Manifest V3 แล้ว
chrome.browsingData
chrome.commands
chrome.contentSettings
chrome.debugger
chrome.downloads
chrome.enterprise.hardwarePlatform
chrome.fontSettings
chrome.history
chrome.instanceID
chrome.permissions
chrome.processes
chrome.search
chrome.sessions
chrome.topSites
นอกจากนี้ API ที่ใช้ต้นแบบ ChromeSetting
ยังรองรับการทำตามสัญญาอีกด้วย API ต่อไปนี้ได้รับผลกระทบจากการเปลี่ยนแปลงนี้
ChromeOS API
chrome.certificateProvider
chrome.documentScan
chrome.enterprise.deviceAttributes
chrome.enterprise.networkingAttributes
chrome.fileBrowserHandler
chrome.fileSystemProvider
chrome.loginState
chrome.printingMetrics
chrome.wallpaper
Chrome 96: สคริปต์เนื้อหาแบบไดนามิก
ตอนนี้ chrome.scripting
API รองรับการลงทะเบียน การอัปเดต การยกเลิกการลงทะเบียน และการดูรายการสคริปต์เนื้อหาขณะรันไทม์ ก่อนหน้านี้ สคริปต์เนื้อหาจะประกาศแบบคงที่ในไฟล์ chrome.scripting.executeScript()
ของส่วนขยายหรือแทรกแบบเป็นโปรแกรมที่รันไทม์ได้เท่านั้น
ข้อมูลอัปเดตเกี่ยวกับเอกสาร: ไทม์ไลน์การรองรับไฟล์ Manifest V2
เราได้ประกาศไทม์ไลน์การเปลี่ยนจาก Manifest V2 เป็น V3 ในบล็อกโพสต์นี้ และเผยแพร่หน้าไทม์ไลน์ที่ละเอียดยิ่งขึ้น
Chrome 96: สิทธิ์ declarativeNetRequestWithHostAccess
สิทธิ์ declarativeNetRequestWithHostAccess
ใหม่นี้ช่วยให้ส่วนขยายใช้ chrome.declarativeNetRequest
API ในเว็บไซต์ที่ส่วนขยายมีสิทธิ์ของโฮสต์ได้ นอกจากนี้ ยังช่วยให้ส่วนขยาย Manifest V2 ที่มีอยู่ซึ่งใช้สิทธิ์ webRequest
, webRequestBlocking
และสิทธิ์ของโฮสต์เฉพาะเว็บไซต์สามารถย้ายข้อมูลไปยัง chrome.declarativeNetRequest
API ได้โดยไม่ต้องให้ผู้ใช้อนุมัติสิทธิ์ใหม่
Chrome 95: แทรกสคริปต์ลงในหน้าเว็บโดยตรง
ตอนนี้เมธอด executeScript()
ของ chrome.scripting
API สามารถแทรกสคริปต์ลงในเวิร์ลด์หลักของหน้าเว็บได้โดยตรง ก่อนหน้านี้ ส่วนขยายสามารถแทรกลงใน
โลกที่โดดเดี่ยวของส่วนขยายโดยตรงเท่านั้น ดูข้อมูลเพิ่มเติมเกี่ยวกับโลกที่แยกต่างหากได้ในเอกสารประกอบเกี่ยวกับสคริปต์เนื้อหา
Chrome 95: รองรับ Storage API
ตอนนี้เมธอดใน chrome.storage
API เวอร์ชัน Manifest V3 จะแสดงผลลัพธ์เป็น Promise
การปรับปรุงนโยบาย: การบังคับใช้การยืนยันแบบ 2 ขั้นตอน
เราได้อัปเดตบล็อกโพสต์การปรับปรุงนโยบายที่เผยแพร่เมื่อวันที่ 29 มิถุนายน 2021 เพื่อแก้ไขลำดับเวลาของการนำการยืนยันแบบ 2 ขั้นตอนไปใช้งาน
Chrome 94: การเปลี่ยนแปลงกฎแบบคงที่ของคําขอจากอินเทอร์เน็ตแบบประกาศ
ตอนนี้ chrome.declarativeNetRequest
รองรับการกำหนดชุดกฎแบบคงที่สูงสุด 50 ชุด (MAX_NUMBER_OF_STATIC_RULESETS) และเปิดใช้ชุดกฎได้สูงสุด 10 ชุด (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) ต่อครั้ง
Chrome 93: การรองรับการแยกแหล่งที่มาหลายแหล่ง
ตอนนี้ทั้งส่วนขยาย Manifest V2 และ Manifest V3 เลือกใช้การแยกแบบข้ามต้นทางได้แล้ว ฟีเจอร์นี้จะจำกัดทรัพยากรข้ามแหล่งที่มาที่โหลดหน้าของส่วนขยายได้ และเปิดใช้ฟีเจอร์ระดับล่างของแพลตฟอร์มเว็บ เช่น SharedArrayBuffer
คุณต้องเลือกใช้ตั้งแต่ Chrome 95 เป็นต้นไป
การปรับปรุงนโยบาย: ปรับปรุงนโยบายโปรแกรมสําหรับนักพัฒนาแอป
นโยบายโปรแกรมสำหรับนักพัฒนาแอปของ Chrome เว็บสโตร์ได้รับการอัปเดตแล้ว โดยมีการชี้แจงนโยบายเกี่ยวกับกลยุทธ์การติดตั้งที่เป็นการหลอกลวง สแปม และเนื้อหาซ้ำ การอัปเดตนี้ยังรวมข้อกำหนดใหม่ในการยืนยันแบบ 2 ขั้นตอนเพื่อเผยแพร่บน Chrome เว็บสโตร์อีกด้วย โปรดอ่านบล็อกโพสต์เพื่อดูข้อมูลเพิ่มเติม
บล็อกโพสต์: การดำเนินการในส่วนขยายในไฟล์ Manifest V3
ส่วนขยาย Chrome มี chrome.browserAction
และ chrome.pageActions
API มาหลายปีแล้ว แต่ Manifest V3 แทนที่ทั้ง 2 รายการด้วย chrome.actions
API ทั่วไป โพสต์นี้อธิบายประวัติของ API เหล่านี้และสิ่งที่เปลี่ยนแปลงใน Manifest V3 อ่านโพสต์
บล็อกโพสต์: แนะนำ chrome.scripting
chrome.scripting
API เป็น Manifest API ใหม่ V3 API ที่มุ่งเน้นด้านการเขียนสคริปต์ ในโพสต์นี้ เราจะเจาะลึกถึงแรงจูงใจในการเปลี่ยนแปลงนี้และดูความสามารถใหม่ๆ ของฟีเจอร์นี้อย่างละเอียด อ่านโพสต์
Chrome 92: การรองรับ Service Worker ของโมดูล
ตอนนี้ Chrome รองรับโมดูล JavaScript ใน Service Worker แล้ว วิธีระบุโมดูลในไฟล์ Manifest
"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: API ใหม่สำหรับการจัดการกลุ่มแท็บ
chrome.tabGroups
API ใหม่และความสามารถใหม่ใน chrome.tabs
ช่วยให้ส่วนขยายอ่านและจัดการกลุ่มแท็บได้
ต้องใช้ Manifest V3
Chrome 89: สิทธิ์ที่ปรับแต่งได้สำหรับทรัพยากรที่เข้าถึงได้บนเว็บ
คําจํากัดความของทรัพยากรที่เข้าถึงได้ทางเว็บในไฟล์ Manifest V3 มีการเปลี่ยนแปลงเพื่อให้ส่วนขยายจํากัดการเข้าถึงทรัพยากรตามต้นทางหรือรหัสส่วนขยายของผู้ขอ
บล็อกโพสต์: ตัวแปลงไฟล์ Manifest ของส่วนขยาย
ทีมส่วนขยายของ Chrome ได้เปิดซอร์สโค้ด "Extension Manifest Converter" ซึ่งเป็นเครื่องมือ Python ที่ทำงานด้านเทคนิคบางอย่างเกี่ยวกับการแปลงส่วนขยายเป็นไฟล์ Manifest V3 ให้ทำงานอัตโนมัติ ดูบล็อกโพสต์ประกาศและดาวน์โหลดจาก GitHub
Chrome 88: Manifest V3 พร้อมใช้งานสำหรับผู้ใช้ทั่วไป
Manifest V3 เป็นการอัปเดตครั้งใหญ่สำหรับแพลตฟอร์มส่วนขยาย โปรดดูภาพรวมของ Manifest V3 เพื่อดูสรุปฟีเจอร์ใหม่และฟีเจอร์ที่มีการเปลี่ยนแปลง ส่วนขยายอาจใช้ไฟล์ Manifest V2 ต่อไปได้ในตอนนี้ แต่เราจะเลิกใช้งานไฟล์นี้ในอนาคตอันใกล้ เราขอแนะนําอย่างยิ่งให้คุณใช้ Manifest V3 สําหรับส่วนขยายใหม่ และเริ่มย้ายข้อมูลส่วนขยายที่มีอยู่ไปยัง Manifest V3 โดยเร็วที่สุด