cordova-plugin-saf-mediastore

Cordova Plugin to read and save files using the Storage Access Framework and Mediastore on Android only.


Keywords
cordova, file, ecosystem:cordova, cordova-android, android, cordova-android-plugin, cordova-plugin, java, javascript, typescript
Licenses
NPOSL-3.0/Unlicense
Install
npm install cordova-plugin-saf-mediastore@1.0.10

Documentation

cordova-plugin-saf-mediastore

Read and save files using the Storage Access Framework and Mediastore

This plugin allows you to read and save files using the Storage Access Framework and Mediastore on Android only.

Available methods

selectFolder(uri:string):Promise<string>

Launches an Intent to select a folder to which files can be saved. Returns the content URI.

selectFile(uri:string):Promise<string>

Launches an Intent to select a file. Returns the content URI.

openFolder(uri:string):Promise<void>

Launches an Intent to open a folder in the folder picker.

openFile(uri:string):Promise<void>

Launches an Intent to open a file.

readFile(uri:string):Promise<ArrayBuffer>

Reads a file as an ArrayBuffer.

writeFile(params:{
	data:string,
	filename:string,
	folder?:string,
	subFolder?:string
}):Promise<string>

Writes a file to a specific filename, with the folder and subfolder being optional. The subfolder will be created if it does not exist, and the default folder is the Downloads folder (saved via Mediastore). Returns the content URI. data is a Base 64 string.

overwriteFile(params:{
    uri:string,
    data:string
}):Promise<string>

Overwrites a file at a specific content URI. Returns the content URI.

saveFile(params:{
	data:string,
	filename?:string,
	folder?:string
}):Promise<string>

Launches a file picker Intent to save a file, with the preferred filename and folder being optional. Returns the content URI. data is a Base 64 string.

deleteFile(uri:string):Promise<number>

Deletes a file at a specific content URI. Returns the number of files deleted.

getFileName(uri:string):Promise<string>

Returns the filename of the corresponding content URI.

getUri(params:{
    folder:string,
    subFolder?:string,
    filename?:string,
}):Promise<string>

Returns the content URI of the file in the corresponding folder and subfolder.

To call methods:

cordova.plugins.safMediastore.<function>(params); //returns a Promise
await cordova.plugins.safMediastore.<function>(params); //in an async function