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

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

เพิ่มเครื่องจัดการไฟล์ลงในเมนูเปิดของ ChromeOS แล้ว
มีการเพิ่มเครื่องจัดการไฟล์ลงในเมนูเปิดของ ChromeOS

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

ChromeOS 120 ขึ้นไป

สิทธิ์

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

ไฟล์ Manifest

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

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

API นี้อาจใช้ได้ในโปรแกรมทำงานของบริการส่วนขยาย ป๊อปอัป แผงด้านข้าง หรือสคริปต์เนื้อหา

กำหนดค่าเครื่องจัดการไฟล์

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

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

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

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

ตัวอย่าง

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

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