我正在開發一個React項目,我第一次使用Cordova插件。我已經正確拍攝了照片,但現在我想使用持久存儲將它們本地存儲在設備上。我發現相當不錯的文檔,但出於某種原因無法使此代碼正常工作。如果有人可以幫助,我會非常感激!resolveLocalFileSytemURL返回FileError {code:5}?
這裏是我的功能:
takePicture() {
navigator.camera.getPicture(
imageData => {
this.setState({image: imageData});
let path = 'filesystem:' + imageData;
window.resolveLocalFileSystemURL(
path,
(entry) => {
window.requestFileSystem(
LocalFileSystem.PERSISTENT,
50 * 1024 * 1024,
(fileSys) => {
//The folder is created if doesn't exist
fileSys.root.getDirectory(
'Observation Photos',
{create:true, exclusive: false},
directory => {
let d = new Date(),
n = d.getTime(),
filename = n + '.jpg';
entry.moveTo(directory, filename, (entry) => {
Photos.insert(entry);
}, handleError);
},
handleError
);
},
handleError
);
}, (error) => {
console.log(error);
}
);
}, message => {
console.log(message);
}
);
}
這裏是我的傳遞路徑的一個例子:
filesystem:file:///storage/emulated/0/Android/data/com.id1b9kkvri4mj2dnqkf9p/cache/1470171102308.jpg
返回此在檢查:路徑
FileError {code: 5}
錯誤代碼編碼誤差5級的裝置。所以這可能是設置MIME類型的一個可能的問題。但是,在嘗試訪問Android數據目錄中的任何文件時,我沒有獲得成功。所以我嘗試使用外部數據目錄。對於保存文件的工作示例,請查看 - https://github.com/gandhirajan/Cordova_File_Operations – Gandhi