โปรดเข้ามาดูหน้านี้บ่อยๆ เพื่อดูข้อมูลเกี่ยวกับการเปลี่ยนแปลงส่วนขยาย Chrome, เอกสารประกอบเกี่ยวกับส่วนขยาย หรือนโยบายที่เกี่ยวข้อง รวมถึงการเปลี่ยนแปลงอื่นๆ คุณจะเห็นประกาศอื่นๆ ที่โพสต์ไว้ใน Extensions Google Group กำหนดการของ Chrome จะแสดงวันที่เผยแพร่เวอร์ชันเสถียรและเบต้า
Chrome 132: พร็อพเพอร์ตี้แบบแช่แข็งใหม่ใน Tabs API
ตั้งแต่ Chrome 132 เป็นต้นไป พร็อพเพอร์ตี้ frozen
ใน Tabs API จะระบุว่าเบราว์เซอร์ได้หยุดแท็บไว้หรือไม่ ข้อความที่ส่งไปยังแท็บที่หยุดทำงานจะอยู่ในคิวและได้รับการดำเนินการเมื่อเลิกหยุดทำงานแท็บ
Prompt API ในส่วนขยาย Chrome
Prompt API สําหรับส่วนขยายพร้อมใช้งานในการทดลองใช้จากต้นทางแล้ว คุณจึงสร้างส่วนขยาย Chrome ที่ใช้ Gemini Nano ซึ่งเป็นโมเดลภาษาที่มีประสิทธิภาพมากที่สุดของเราในเบราว์เซอร์ได้
เข้าร่วมการทดลองใช้ Prompt API จากต้นทางซึ่งทํางานใน Chrome 131 ถึง 136 และแชร์ความคิดเห็นของคุณ ความคิดเห็นของคุณจะส่งผลโดยตรงต่อวิธีที่เราสร้างและใช้งาน API เวอร์ชันอนาคตของ API นี้และ API AI ในตัวทั้งหมด
บล็อกโพสต์: การเปลี่ยนแปลงในส่วนขยาย Chrome เดือนตุลาคม 2024
ถึงเวลาสรุปข้อมูลเกี่ยวกับส่วนขยาย Chrome อีกรอบแล้ว เรามีข้อมูลอัปเดตที่น่าตื่นเต้นเกี่ยวกับการผสานรวม AI, API ใหม่, กิจกรรม และวิดีโอ อ่านข้อมูลทั้งหมดได้ในสิ่งที่เกิดขึ้นในส่วนขยาย Chrome ฉบับเดือนตุลาคม
เข้าร่วมภารกิจ AI ในตัว
Chrome ได้เปิดตัว Built-in AI Challenge: เราขอเชิญคุณสร้างเว็บแอปพลิเคชันและส่วนขยาย Chrome ที่สร้างสรรค์โดยใช้โมเดลและ API AI ที่ผสานรวมของ Chrome และมีโอกาสลุ้นรับรางวัลมูลค่ารวม $65,000 USD
ลงชื่อสมัครใช้และดูข้อมูลเพิ่มเติมในเว็บไซต์ Built-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 เว็บสโตร์
deployPercentage พร้อมใช้งานใน Chrome เว็บสโตร์ API
เมื่อเร็วๆ นี้ เราได้อัปเดตเอกสารประกอบของ Chrome Web Store API เพื่อรวมข้อมูลเกี่ยวกับ deployPercentage
ซึ่งให้คุณกําหนดเปอร์เซ็นต์ของการติดตั้งใช้งานแบบเปิดตัวบางส่วนได้ ดูข้อมูลเกี่ยวกับ deployPercentage
Chrome 126: ช่วงทดลองใช้จากต้นทางในส่วนขยาย
Chrome 126 เปิดตัวช่อง manifest.json ใหม่ - trial_tokens
ซึ่งให้คุณเลือกใช้ช่วงทดลองใช้จากต้นทางและช่วงทดลองเลิกใช้งานในแพลตฟอร์มส่วนขยายทั้งหมด อ่านข้อมูลเพิ่มเติมในคู่มือ
บล็อกโพสต์: ข้อมูลอัปเดตเกี่ยวกับส่วนขยาย Chrome - เมษายน 2024
เราได้เผยแพร่สิ่งที่เกิดขึ้นในส่วนขยาย Chrome ฉบับใหม่ โพสต์นี้จะกล่าวถึงสิ่งที่ทีมส่วนขยายได้ดำเนินการในช่วงหลายเดือนที่ผ่านมา ซึ่งรวมถึงการย้อนกลับเวอร์ชันใน Chrome เว็บสโตร์ การรองรับ Firebase Auth ที่ดีขึ้น และการเปิดตัวและการอัปเดต 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 อักขระ ขีดจำกัดนี้ครอบคลุมส่วนขยายเกือบทั้งหมดในร้านค้าในปัจจุบัน คุณจึงอาจไม่จําเป็นต้องดําเนินการใดๆ จากการเปลี่ยนแปลงนี้ หากคุณพยายามอัปโหลดส่วนขยายที่มีชื่อยาวเกินขีดจำกัดสูงสุด ร้านค้าจะบล็อกการอัปโหลด
บล็อกโพสต์: เส้นทางของ 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()
) จะยังคงรองรับเฉพาะการเรียกกลับเนื่องจากแพลตฟอร์มปัจจุบันไม่เข้ากันได้กับ Promise ระบบยังคงรองรับการเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง หากพบ Promise ที่ไม่สำเร็จ โปรดรายงานข้อบกพร่อง
คำแนะนำใหม่สำหรับการสื่อสารแบบเรียลไทม์
เราเพิ่งเผยแพร่คู่มือเกี่ยวกับตัวเลือกแบบเรียลไทม์ในส่วนขยาย การอัปเดตแบบเรียลไทม์เป็นเส้นทางการสื่อสารที่รวดเร็วจากเซิร์ฟเวอร์ไปยังการติดตั้งส่วนขยายโดยตรง นอกจากนี้ เรายังมีคําแนะนําใหม่ในการใช้ 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 for Developers ซึ่งพูดคุยกับ Matt Frisbie ซึ่งเป็น Google Developer Expert และนักเขียน ดูวิดีโอได้ที่นี่
คำแนะนำใหม่เกี่ยวกับการทดสอบส่วนขยาย
เราเพิ่งเผยแพร่คําแนะนําใหม่เกี่ยวกับวิธีเขียนการทดสอบอัตโนมัติสําหรับส่วนขยาย ซึ่งรวมถึงวิธีเขียนการทดสอบหน่วย ทั้งคําแนะนําทั่วไปและบทแนะนําเกี่ยวกับการทดสอบจากต้นทางถึงปลายทาง
บล็อกโพสต์: การเปลี่ยนแปลงในส่วนขยาย 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 พื้นที่เก็บข้อมูลบนเว็บ
เราได้เผยแพร่คู่มือใหม่เกี่ยวกับวิธีการทำงานของคุกกี้และ Web Storage 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()
ตอนนี้คุณระบุรายการ reason
ได้หลายรายการเมื่อเรียกใช้ chrome.offscreen.createDocument()
ใช้ตัวเลือกนี้เมื่อเอกสารนอกหน้าจอจะใช้เพื่อวัตถุประสงค์หลายอย่าง โดยเบราว์เซอร์จะใช้เหตุผลที่ระบุเพื่อกำหนดอายุการใช้งานของเอกสารที่อยู่นอกหน้าจอ
เครื่องมือใหม่: เครื่องมือทดสอบการอัปเดตส่วนขยาย
เราเพิ่งเปิดตัวเครื่องมือทดสอบการอัปเดตส่วนขยาย ซึ่งเป็นเซิร์ฟเวอร์การอัปเดตส่วนขยายในเครื่องที่ใช้ทดสอบการอัปเดตส่วนขยาย Chrome ในระหว่างการพัฒนาในเครื่อง รวมถึงการให้สิทธิ์ เครื่องมือจะแสดงขั้นตอนการอัปเดตของผู้ใช้ รวมถึงการปิดใช้ส่วนขยายจนกว่าผู้ใช้จะให้สิทธิ์ที่ขอใหม่ เครื่องมือนี้มีประโยชน์อย่างยิ่งในการจําลองการเปลี่ยนแปลงสิทธิ์ที่ขอเมื่ออัปเดตส่วนขยายจากไฟล์ Manifest V2 เป็นไฟล์ Manifest V3
Chrome 114: New Side Panel API
ขอแนะนํา Side Panel API ใหม่ ซึ่งเป็นแพลตฟอร์มที่มาพร้อมแอปต่างๆ ซึ่งช่วยให้ผู้ใช้เข้าถึงเครื่องมือต่างๆ ควบคู่ไปกับเนื้อหาที่กําลังเรียกดู ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลอ้างอิง Side Panel API นอกจากนี้ เรายังได้เพิ่มตัวอย่างแผงด้านข้างจำนวนมากลงในที่เก็บตัวอย่าง GitHub นอกจากนี้ เรายังแชร์ข้อมูลเพิ่มเติมเกี่ยวกับแผงด้านข้างในบล็อกโพสต์ใหม่เรื่องการออกแบบประสบการณ์การใช้งานที่ยอดเยี่ยมด้วย Side Panel API ใหม่ นอกจากนี้ เรายังได้ตรวจสอบนโยบายหลักเกณฑ์ด้านคุณภาพและแนวทางปฏิบัติแนะนำเพื่อให้คำแนะนำเพิ่มเติมเกี่ยวกับการสร้างส่วนขยายแผงด้านข้างที่มีคุณภาพสูง
ความคิดเห็นของคุณมีความสำคัญต่อการสร้าง API นี้ โปรดแชร์ความคิดเห็นและคำขอฟีเจอร์ใน chromium-groups โปรดรอติดตามข้อมูลอัปเดตใหม่ๆ ขณะที่เราปรับปรุง Side Panel API อย่างต่อเนื่อง
ตัวอย่างใหม่: WASM ในส่วนขยาย
เรามีตัวอย่างใหม่ 2 รายการที่สาธิตวิธีใช้ WASM ในส่วนขยาย ดังนี้
- การใช้ WASM ใน Manifest V3 แสดงวิธีการทั่วไปในการรวมโมดูล WASM
- การใช้ WASM เป็นโมดูลใน Manifest V3 แสดงวิธีใช้ในโมดูล
ขอขอบคุณผู้มีส่วนร่วมใน GitHub อย่าง @daidr สำหรับตัวอย่างเหล่านี้
คำแนะนำการย้ายข้อมูล 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 ใหม่ซึ่งอธิบายแนวคิดสําคัญอย่างละเอียดยิ่งขึ้น เราจะขยายส่วนนี้ในอีกไม่กี่เดือนข้างหน้า
เคล็ดลับการแก้ปัญหาเพิ่มเติมสำหรับการละเมิดใน Web Store
เราได้เพิ่มคำแนะนำใหม่ 2 ด้านเพื่อช่วยในการเผยแพร่ใน Chrome เว็บสโตร์ คำแนะนำสำหรับฟังก์ชันการทำงานขั้นต่ำมุ่งเน้นที่การมอบสิทธิประโยชน์แก่ผู้ใช้และปรับปรุงประสบการณ์การท่องเว็บ หลักเกณฑ์สําหรับโฆษณาแอฟฟิลิเอตมีไว้เพื่อให้ผู้ใช้ทราบเกี่ยวกับส่วนขยายที่ใช้ลิงก์หรือโค้ดแอฟฟิลิเอตเพื่อสร้างรายได้ และเพื่อให้ผู้ใช้มีสิทธิ์ควบคุมบางอย่างโดยกำหนดให้ผู้ใช้ดำเนินการก่อนรวม
วิธีการใหม่สำหรับเครื่องมือแปลงไฟล์ Manifest ของส่วนขยาย
เราได้เขียนไฟล์ README ของ Extension Manifest Converter ใหม่เพื่อให้คุณเห็นสิ่งที่ต้องทำหลังเรียกใช้เครื่องมือได้ง่ายขึ้น ตัวแปลงจะช่วยย้ายข้อมูลส่วนขยายที่สร้างใน Manifest V2 ไปยัง Manifest V3 README ใหม่จะอธิบายสิ่งที่เครื่องมือทําโดยใช้คําที่ตรงกับคําในรายการตรวจสอบของคู่มือการย้ายข้อมูล ตัวแปลงไม่ได้ทำทุกอย่าง แต่ช่วยขจัดงานจำนวนมากที่ไม่จําเป็นต้องอาศัยการตัดสินของมนุษย์
Chrome 113: เหตุผลใหม่สำหรับเอกสารที่อยู่นอกหน้าจอ
เราได้เพิ่มประเภทเหตุผลใหม่ 2 ประเภทลงใน Offscreen Documents API ใช้ LOCAL_STORAGE
เพื่อเข้าถึง localStorage API ของแพลตฟอร์มเว็บ ใช้ WORKER
เมื่อสร้าง Web Worker
Google Analytics 4 พร้อมใช้งานในหน้าแดชบอร์ดสําหรับนักพัฒนาซอฟต์แวร์แล้ว
ตอนนี้แดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ Chrome เว็บสโตร์รองรับ Google Analytics 4 (GA4) แล้ว เราได้ลดความซับซ้อนของการตั้งค่า Google Analytics และทำให้การจัดการการเข้าถึงสำหรับผู้เผยแพร่โฆษณากลุ่มตรงไปตรงมามากขึ้น หากก่อนหน้านี้คุณใช้ Google Universal Analytics เพื่อติดตามกิจกรรมในข้อมูลผลิตภัณฑ์ในร้าน คุณจะต้องดําเนินการภายในวันที่ 1 กรกฎาคม 2023 เพื่อให้ได้รับข้อมูลเกี่ยวกับข้อมูลผลิตภัณฑ์ในร้านต่อไป ดูข้อมูลเพิ่มเติมได้ที่โพสต์ใน Google Group ของส่วนขยาย Chromium
File Handling API พร้อมให้บริการใน ChromeOS
File Handler API พร้อมให้ทดลองใช้แล้วใน ChromeOS เวอร์ชัน 112 และ 113 ของ Canary ซึ่งช่วยให้ส่วนขยายใน ChromeOS เปิดไฟล์ที่มีประเภท MIME และนามสกุลไฟล์ที่ระบุได้ หากต้องการใช้การจัดการไฟล์ ให้เพิ่มชุดกฎลงใน manifest.json
ฟีเจอร์นี้ทํางานเหมือนกับ Progressive Web App ดูข้อมูลเพิ่มเติมได้ที่บทความอื่นๆ ในเว็บไซต์นี้
วิธีเปิดใช้การจัดการไฟล์
- ตั้งแต่เวอร์ชัน 112 เป็นต้นไป ให้เปิด Chrome โดยใช้ Flag
--enable-features=ExtensionWebFileHandlers
- ตั้งแต่เวอร์ชัน 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 ซึ่งจะช่วยในการเปลี่ยนจากหน้าในเบื้องหลังเป็น Service Worker ของส่วนขยายโดยรองรับฟีเจอร์และ 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 แล้ว ซึ่งมาพร้อมกับการเปลี่ยนแปลงเล็กน้อยในอินเทอร์เฟซของ identity.getAuthToken()
โดยที่การคืนค่าแบบแอซิงโครนัสที่ตั้งค่าไว้สำหรับการเรียกใช้แบบ Promise จะมี "token" และ "grantedScopes" เป็นพารามิเตอร์ในออบเจ็กต์เดียว (ต่างจากเวอร์ชันการเรียกกลับที่ได้รับพารามิเตอร์เหล่านี้เป็นอาร์กิวเมนต์แยกต่างหากสำหรับการเรียกกลับ)
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 นี้จะแสดงข้อผิดพลาดเมื่อเรียกใช้เนื่องจากความเกี่ยวเนื่องภายในกับความสามารถของ 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: การรองรับ Service Worker ของส่วนขยายสำหรับรูปแบบ file: ใน 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.executeScript() และ scripting.insertCSS() ยอมรับไฟล์หลายไฟล์
ตอนนี้เมธอด executeScript()
และ insertCSS()
ของ Scripting API รองรับไฟล์หลายไฟล์แล้ว ก่อนหน้านี้เมธอดเหล่านี้ต้องใช้อาร์เรย์ที่มีรายการไฟล์รายการเดียว
อัปเดตเอกสาร: การอัปเดตการแก้ปัญหาการละเมิดรีวิว
เราได้อัปเดตหน้าการแก้ปัญหาการละเมิดใน Chrome เว็บสโตร์เพื่อให้คำแนะนำโดยละเอียดเพิ่มเติมแก่นักพัฒนาแอปเกี่ยวกับสาเหตุทั่วไปของการปฏิเสธ
Chrome 96: ขยายการรองรับ Promise ไปยัง API อีก 27 รายการ
การเผยแพร่นี้มีอัปเดตเกี่ยวกับสัญญามากกว่ารุ่นก่อนหน้าอย่างมาก การอัปเดตนี้รวมถึง API ของส่วนขยายทั้งแบบทั่วไปและแบบเฉพาะ ChromeOS ขยายส่วนต่อไปนี้เพื่อดูรายละเอียด
Extensions 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
ยังรองรับ Promise ด้วย 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 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 โดยเร็วที่สุด