使用 cordova 文件插件访问 android 内部存储
accessing android internal storage with cordova file plugin
我正在尝试制作一个 android 应用程序,到目前为止,该应用程序正在使用本机录音机来录制音频。
路径是 /storage/emulated/0/Sounds
中的声音文件
现在应用程序正在使用文件传输 cordova 插件。其根是 /data/data/thisAppDirectory 并且 requestFileSystem 正在使用它作为路径。
是否可以通过文件系统向上一个目录进入声音文件夹?
是的,我们开始了!你必须使用 cordova 文件传输插件,像这样:
window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, function(fs){
fs.root.getFile("'"+audioData[0].name+"'", {create: true, exclusive: false},
function(entry){
var fileTransfer = new FileTransfer();
fileTransfer.download(
"file:///storage/emulated/0/Sounds/" + audioData[0].name, // the filesystem uri you mentioned
"cdvfile://localhost/temporary/" + audioData[0].name,
function(entry) {
// do what you want with the entry here
console.log("download complete: " + entry.fullPath);
window.requestFileSystem(LocalFileSystem.TEMPORARY, 1000000000, gotFS, fail);
},
function(error) {
console.log("error source " + error.source);
console.log("error target " + error.target);
console.log("error code " + error.code + "Cheeeese");
},
false,
null
);
}, function(){
alert("file create error");
});
}, null);
我正在尝试制作一个 android 应用程序,到目前为止,该应用程序正在使用本机录音机来录制音频。
路径是 /storage/emulated/0/Sounds
中的声音文件现在应用程序正在使用文件传输 cordova 插件。其根是 /data/data/thisAppDirectory 并且 requestFileSystem 正在使用它作为路径。
是否可以通过文件系统向上一个目录进入声音文件夹?
是的,我们开始了!你必须使用 cordova 文件传输插件,像这样:
window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, function(fs){
fs.root.getFile("'"+audioData[0].name+"'", {create: true, exclusive: false},
function(entry){
var fileTransfer = new FileTransfer();
fileTransfer.download(
"file:///storage/emulated/0/Sounds/" + audioData[0].name, // the filesystem uri you mentioned
"cdvfile://localhost/temporary/" + audioData[0].name,
function(entry) {
// do what you want with the entry here
console.log("download complete: " + entry.fullPath);
window.requestFileSystem(LocalFileSystem.TEMPORARY, 1000000000, gotFS, fail);
},
function(error) {
console.log("error source " + error.source);
console.log("error target " + error.target);
console.log("error code " + error.code + "Cheeeese");
},
false,
null
);
}, function(){
alert("file create error");
});
}, null);