การจัดการไฟล์ใน Chrome OS

การจัดการไฟล์ช่วยให้คุณกำหนดค่า ChromeOS เพื่อให้ส่วนขยายเปิดไฟล์ได้โดยใช้เมนูเปิดของเมนูไฟล์หรือเมนูเปิดด้วยของเมนูตามบริบท เมื่อเปิดแล้ว คุณจะประมวลผลข้อมูลของไฟล์โดยใช้ Launch Handler API ของแพลตฟอร์มเว็บ จากนั้นคุณจะใช้ API ของแพลตฟอร์มเว็บมาตรฐานเพื่อแสดงหรือจัดการไฟล์

เพิ่มตัวแฮนเดิลไฟล์ลงในเมนูเปิดของ ChromeOS
เพิ่มตัวแฮนเดิลไฟล์ลงในเมนูเปิดของ ChromeOS

ความพร้อมใช้งานในส่วนขยาย

ChromeOS 120 ขึ้นไป

สิทธิ์

ไม่จำเป็นต้องมีสิทธิ์สำหรับการจัดการไฟล์

ไฟล์ Manifest

คุณต้องเพิ่มอาร์เรย์ "file_handlers" ลงในไฟล์ manifest.json

บริบทที่สนับสนุน

API นี้อาจใช้ใน Service Worker ของส่วนขยาย ป๊อปอัป แผงด้านข้าง หรือ Content Script

กำหนดค่าตัวแฮนเดิลไฟล์

สมาชิกแต่ละคนของ "file_handlers" ซึ่งหมายถึงตัวแฮนเดิลไฟล์แต่ละตัว จะระบุประเภทไฟล์ที่จะให้หน้าส่วนขยายที่เฉพาะเจาะจงจัดการ

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

ประมวลผลไฟล์

ตัวแฮนเดิลไฟล์คือไฟล์ HTML ที่อยู่ในส่วนขยาย เมื่อผู้ใช้เลือกแฮนเดิลของคุณจากเมนู ระบบจะเปิดไฟล์ HTML ในแท็บใหม่ การประมวลผลไฟล์ ไม่ว่าคุณจะแสดงหรือใช้ในลักษณะอื่น จะทำด้วย JavaScript โดยใช้ Web Platform API ที่เหมาะสม โค้ดการประมวลผลต้องอยู่ในไฟล์ JavaScript แยกต่างหากและรวมไว้ผ่านแท็ก <script> และต้องอยู่ในส่วนขยายด้วย ไฟล์สคริปต์ใช้อินเทอร์เฟซ LaunchQueue ของ Launch Handler API เพื่อรับออบเจ็กต์ FileSystemFileHandle

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีรับออบเจ็กต์ FileSystemFileHandle โดยใช้อินเทอร์เฟซ LaunchQueue หากต้องการดูการจัดการไฟล์ในขณะใช้งาน ให้ติดตั้ง File Handling Demo

if ('launchQueue' in window) {
  launchQueue.setConsumer(async launchParams => {
    if (!launchParams.files || !launchParams.files.length) { return; }
    const fileHandle = launchParams.files[0];
  });
}
``````