ส่วนขยาย ธีม และแอปพลิเคชันเป็นเพียงกลุ่มทรัพยากรที่ห่อหุ้มด้วยไฟล์ manifest.json
ที่อธิบายเนื้อหาของแพ็กเกจ รูปแบบของไฟล์นี้โดยทั่วไปจะมีความเสถียร แต่บางครั้งต้องมีการแก้ไขที่ส่งผลกับส่วนอื่นที่สำคัญด้วย
นักพัฒนาซอฟต์แวร์ควรระบุเวอร์ชันไฟล์ Manifest ที่กำหนดเป้าหมายแพ็กเกจของตนโดยการตั้งค่าคีย์ manifest_version
ในไฟล์ Manifest
เวอร์ชันปัจจุบัน
ปัจจุบันนักพัฒนาซอฟต์แวร์ควรระบุ 'manifest_version': 2
ดังนี้
{
...,
"manifest_version": 2,
...
}
ไฟล์ Manifest เวอร์ชัน 1 เลิกใช้งานใน Chrome 18 แล้ว และจะไม่รองรับการใช้งานตามกำหนดการต่อไปนี้
กำหนดการรองรับไฟล์ Manifest เวอร์ชัน 1
สิงหาคม 2012
- เว็บสโตร์จะบล็อกการสร้างส่วนขยายใหม่ในไฟล์ Manifest เวอร์ชัน 1
- เว็บสโตร์จะอนุญาตให้อัปเดตส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ที่มีอยู่
มีนาคม 2556
- เว็บสโตร์จะบล็อกการอัปเดตส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ในวันที่ 4 มีนาคม 2013
เมษายน 2013
- Chrome 27 เบต้าจะหยุดรวมส่วนขยายไฟล์ Manifest เวอร์ชัน 1 (หรือโหลดส่วนขยายเพื่อการพัฒนา)
มิถุนายน 2013
- เว็บสโตร์จะนำส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ออกจากกำแพง ผลการค้นหา และหน้าหมวดหมู่
- โปรดทราบว่าระบบจะส่งอีเมลแจ้งนักพัฒนาซอฟต์แวร์ทุกรายที่มีส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ที่ยังอยู่ใน Store โดยแจ้งให้นักพัฒนาแอปทราบว่าจะไม่มีการเผยแพร่ส่วนขยายเหล่านี้พร้อมกับแจ้งวิธีการอัปเดต
กันยายน 2013
- เว็บสโตร์จะยกเลิกการเผยแพร่ส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ทั้งหมด
- ระบบจะส่งอีเมลประกาศครั้งสุดท้ายถึงนักพัฒนาซอฟต์แวร์ที่มีส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ซึ่งยังอยู่ในเว็บสโตร์
- Chrome จะโหลดและเรียกใช้ส่วนขยายไฟล์ Manifest เวอร์ชัน 1 ที่ติดตั้งต่อไป
มกราคม 2014
- Chrome จะหยุดโหลดหรือเรียกใช้ส่วนขยายไฟล์ Manifest เวอร์ชัน 1
การเปลี่ยนแปลงระหว่างเวอร์ชัน 1 และ 2
- นโยบายรักษาความปลอดภัยเนื้อหาจะตั้งค่าเป็น
`script-src 'self'; object-src 'self';
โดยค่าเริ่มต้น การปรับปรุงนี้ส่งผลกระทบมากมายต่อนักพัฒนาแอป ซึ่งอธิบายไว้อย่างละเอียดในเอกสารประกอบcontent_security_policy
- โดยค่าเริ่มต้น ทรัพยากรของแพ็กเกจไม่พร้อมใช้งานสำหรับเว็บไซต์ภายนอกอีกต่อไป (เป็น
src
ของรูปภาพ หรือแท็กscript
) หากต้องการให้เว็บไซต์โหลดทรัพยากรที่อยู่ในแพ็กเกจได้ คุณจะต้องกำหนดเป็นรายการที่อนุญาตอย่างชัดเจนผ่านแอตทริบิวต์ไฟล์ Manifestweb_accessible_resources
ซึ่งจะเกี่ยวข้องอย่างยิ่งกับส่วนขยายที่สร้างอินเทอร์เฟซบนเว็บไซต์ผ่านสคริปต์เนื้อหาที่แทรกเข้ามา - ระบบได้แทนที่พร็อพเพอร์ตี้
background_page
ด้วยพร็อพเพอร์ตี้background
ที่มีพร็อพเพอร์ตี้scripts
หรือpage
แล้ว ดูรายละเอียดได้ในเอกสารประกอบหน้ากิจกรรม การเปลี่ยนแปลงเกี่ยวกับการทำงานของเบราว์เซอร์
- คีย์
browser_actions
ในไฟล์ Manifest และchrome.browserActions
API หายไปแล้ว โปรดใช้browser_action
และchrome.browserAction
ในรูปเอกพจน์แทน - นำพร็อพเพอร์ตี้
icons
ของbrowser_action
ออกแล้ว โปรดใช้พร็อพเพอร์ตี้default_icon
หรือ browserAction.setIcon แทน - นำพร็อพเพอร์ตี้
name
ของbrowser_action
ออกแล้ว โปรดใช้พร็อพเพอร์ตี้default_title
หรือ browserAction.setTitle แทน - นำพร็อพเพอร์ตี้
popup
ของbrowser_action
ออกแล้ว ใช้พร็อพเพอร์ตี้default_popup
หรือ browserAction.setPopup แทน - ระบุพร็อพเพอร์ตี้
default_popup
ของbrowser_action
เป็นออบเจ็กต์ไม่ได้อีกต่อไป ต้องเป็นสตริง
- คีย์
การเปลี่ยนแปลงการทำงานของหน้าเว็บ:
- คีย์
page_actions
ในไฟล์ Manifest และchrome.pageActions
API หายไปแล้ว โปรดใช้page_action
และchrome.pageAction
ในรูปเอกพจน์แทน - นำพร็อพเพอร์ตี้
icons
ของpage_action
ออกแล้ว ให้ใช้พร็อพเพอร์ตี้default_icon
หรือ pageAction.setIcon แทน - นำพร็อพเพอร์ตี้
name
ของpage_action
ออกแล้ว ให้ใช้พร็อพเพอร์ตี้default_title
หรือ pageAction.setTitle แทน - นำพร็อพเพอร์ตี้
popup
ของpage_action
ออกแล้ว โปรดใช้พร็อพเพอร์ตี้default_popup
หรือ pageAction.setPopup แทน - ระบุพร็อพเพอร์ตี้
default_popup
ของpage_action
เป็นออบเจ็กต์ไม่ได้อีกต่อไป ต้องเป็นสตริง
- คีย์
นำ
chrome.self
API ออกแล้ว โปรดใช้chrome.extension
แทนchrome.extension.getTabContentses
(!!!) และchrome.extension.getExtensionTabs
หายไปแล้ว ใช้ extension.getViews แทนPort.tab
หายไปแล้ว โปรดใช้ runtime.Port แทน