chrome.fileSystem

Deskripsi

Gunakan chrome.fileSystem API untuk membuat, membaca, menavigasi, dan menulis ke sistem file lokal pengguna. Dengan API ini, Aplikasi Chrome dapat membaca dan menulis ke lokasi yang dipilih pengguna. Misalnya, aplikasi editor teks dapat menggunakan API untuk membaca dan menulis dokumen lokal. Semua kegagalan akan diberi tahu melalui chrome.runtime.lastError.

Izin

fileSystem

Ketersediaan

Hanya latar depan

Jenis

AcceptOption

Properti

  • deskripsi

    string opsional

    Ini adalah deskripsi teks opsional untuk opsi ini. Jika tidak ada, deskripsi akan dibuat secara otomatis; biasanya berisi daftar ekstensi yang valid yang diperluas (misalnya, "text/html" dapat diperluas menjadi "*.html, *.htm").

  • ekstensi

    string[] opsional

    Ekstensi yang akan diterima, misalnya "jpg", "gif", "crx".

  • mimeTypes

    string[] opsional

    Jenis MIME yang akan diterima, misalnya "image/jpeg" atau "audio/*". Salah satu mimeTypes atau ekstensi harus berisi setidaknya satu elemen yang valid.

ChooseEntryOptions

Properti

  • menerima

    AcceptOption[] opsional

    Daftar opsional opsi penerimaan untuk pembuka file ini. Setiap opsi akan ditampilkan sebagai grup unik kepada pengguna akhir.

  • acceptsAllTypes

    boolean opsional

    Apakah akan menerima semua jenis file, selain opsi yang ditentukan dalam argumen accepts. Nilai defaultnya adalah benar (true). Jika kolom accepts tidak disetel atau tidak berisi entri yang valid, kolom ini akan selalu direset ke true.

  • acceptsMultiple

    boolean opsional

    Apakah akan menerima beberapa file. Hal ini hanya didukung untuk openFile dan openWritableFile. Callback ke chooseEntry akan dipanggil dengan daftar entri jika ini ditetapkan ke true. Jika tidak, fungsi ini akan dipanggil dengan satu Entry.

  • suggestedName

    string opsional

    Nama file yang disarankan yang akan ditampilkan kepada pengguna sebagai nama default untuk disimpan. Ini bersifat opsional dan hanya berlaku untuk 'saveFile'.

  • jenis

    ChooseEntryType opsional

    Jenis dialog yang akan ditampilkan. Defaultnya adalah 'openFile'.

ChooseEntryType

Enum

"openFile"
Meminta pengguna untuk membuka file yang ada dan menampilkan FileEntry jika berhasil. Mulai Chrome 31, FileEntry akan dapat ditulis jika aplikasi memiliki izin 'write' di bagian 'fileSystem'; jika tidak, FileEntry akan bersifat hanya baca.

"openWritableFile"
Meminta pengguna untuk membuka file yang ada dan menampilkan FileEntry yang dapat ditulis jika berhasil. Panggilan yang menggunakan jenis ini akan gagal dengan error runtime jika aplikasi tidak memiliki izin 'write' di bagian 'fileSystem'.

"saveFile"
Meminta pengguna untuk membuka file yang ada atau file baru dan menampilkan FileEntry yang dapat ditulis jika berhasil. Panggilan yang menggunakan jenis ini akan gagal dengan error runtime jika aplikasi tidak memiliki izin 'write' di bagian 'fileSystem'.

"openDirectory"
Meminta pengguna untuk membuka direktori dan menampilkan DirectoryEntry jika berhasil. Panggilan yang menggunakan jenis ini akan gagal dengan error runtime jika aplikasi tidak memiliki izin 'directory' di bagian 'fileSystem'. Jika aplikasi memiliki izin 'write' di bagian 'fileSystem', DirectoryEntry yang ditampilkan akan dapat ditulis; jika tidak, DirectoryEntry akan bersifat hanya baca. Yang baru di Chrome 31.

RequestFileSystemOptions

Chrome 44+

Properti

  • volumeId

    string

    ID volume yang diminta.

  • dapat ditulis

    boolean opsional

    Apakah sistem file yang diminta harus dapat ditulis. Defaultnya adalah hanya baca.

Volume

Chrome 44+

Properti

  • volumeId

    string

  • dapat ditulis

    boolean

VolumeListChangedEvent

Chrome 44+

Properti

Metode

chooseEntry()

chrome.fileSystem.chooseEntry(
  options?: ChooseEntryOptions,
  callback: function,
)
: void

Minta pengguna untuk memilih file atau direktori.

Parameter

  • opsi
  • callback

    fungsi

    Parameter callback terlihat seperti:

    (entry?: Entry, fileEntries?: FileEntry[]) => void

    • entri

      Entri opsional

    • fileEntries

      FileEntry[] opsional

getDisplayPath()

Promise
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)
: Promise<string>

Mendapatkan jalur tampilan objek Entry. Jalur tampilan didasarkan pada jalur lengkap file atau direktori di sistem file lokal, tetapi dapat dibuat lebih mudah dibaca untuk tujuan tampilan.

Parameter

  • entri

    Entri

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (displayPath: string) => void

    • displayPath

      string

Hasil

  • Promise<string>

    Chrome 117+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

getVolumeList()

Promise Chrome 44+
chrome.fileSystem.getVolumeList(
  callback?: function,
)
: Promise<Volume[] | undefined>

Menampilkan daftar volume yang tersedia untuk requestFileSystem(). Izin manifes "fileSystem": {"requestFileSystem"} diperlukan. Hanya tersedia untuk aplikasi kios yang berjalan dalam sesi kios. Jika terjadi error, volumes tidak akan ditentukan, dan chrome.runtime.lastError akan ditetapkan.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (volumes?: Volume[]) => void

Hasil

  • Promise<Volume[] | undefined>

    Chrome 117+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

getWritableEntry()

chrome.fileSystem.getWritableEntry(
  entry: Entry,
  callback: function,
)
: void

Mendapatkan Entry yang dapat ditulis dari Entry lain. Panggilan ini akan gagal dengan error runtime jika aplikasi tidak memiliki izin 'write' di 'fileSystem'. Jika entri adalah DirectoryEntry, panggilan ini akan gagal jika aplikasi tidak memiliki izin 'directory' di bagian 'fileSystem'.

Parameter

  • entri

    Entri

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (entry: Entry) => void

    • entri

      Entri

isRestorable()

Promise
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)
: Promise<boolean>

Menampilkan apakah aplikasi memiliki izin untuk memulihkan entri dengan ID yang diberikan.

Parameter

  • id

    string

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (isRestorable: boolean) => void

    • isRestorable

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

isWritableEntry()

Promise
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)
: Promise<boolean>

Mendapatkan apakah Entri ini dapat ditulis atau tidak.

Parameter

  • entri

    Entri

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (isWritable: boolean) => void

    • isWritable

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

requestFileSystem()

Promise Chrome 44+
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)
: Promise<FileSystem | undefined>

Meminta akses ke sistem file untuk volume yang diwakili oleh options.volumeId. Jika options.writable ditetapkan ke benar (true), sistem file akan dapat ditulis. Jika tidak, file akan bersifat hanya baca. Opsi writable memerlukan izin "fileSystem": {"write"} dalam manifes. Hanya tersedia untuk aplikasi kios yang berjalan dalam sesi kios. Untuk mode kios peluncuran manual, dialog konfirmasi akan ditampilkan di atas jendela aplikasi yang aktif. Jika terjadi error, fileSystem tidak akan ditentukan, dan chrome.runtime.lastError akan ditetapkan.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (fileSystem?: FileSystem) => void

    • fileSystem

      FileSystem opsional

Hasil

  • Promise<FileSystem | undefined>

    Chrome 117+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

restoreEntry()

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)
: void

Menampilkan entri file dengan ID yang diberikan jika dapat dipulihkan. Jika tidak, panggilan ini akan gagal dengan error runtime.

Parameter

  • id

    string

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (entry: Entry) => void

    • entri

      Entri

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)
: string

Menampilkan ID yang dapat diteruskan ke restoreEntry untuk mendapatkan kembali akses ke entri file tertentu. Hanya 500 entri yang paling baru digunakan yang dipertahankan, dengan panggilan ke retainEntry dan restoreEntry dihitung sebagai penggunaan. Jika aplikasi memiliki izin 'retainEntries' di bagian 'fileSystem', entri akan dipertahankan tanpa batas waktu. Jika tidak, entri hanya akan dipertahankan saat aplikasi berjalan dan saat dimulai ulang.

Parameter

  • entri

    Entri

Hasil

  • string

Acara

onVolumeListChanged

Chrome 44+
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

Dipanggil saat daftar volume yang tersedia diubah.

Parameter