gpt4 book ai didi

javascript - PhoneGap/Cordova for android 文件插件错误代码 1

转载 作者:行者123 更新时间:2023-11-29 21:34:38 31 4
gpt4 key购买 nike

我正在使用 phonegap,我想从 Android 设备访问位于 www/res 的文件,但它正在抛出 NOT_FOUND_ERR..​​.我确定文件位于此处,这是我编写的代码:

onDeviceReady: function(){
window.resolveLocalFileSystemURL(cordova.file.applicationDirectory + "www/res/myfile.txt", app.gotFile, app.fail);
},

gotFile: function(fileEntry){
fileEntry.file(function(file){
var reader = new FileReader();

reader.onloadend = function(e) {
alert(this.result);
}

reader.readAsText(file);
});
},

fail: function(e){
console.log("Error reading");
console.log(e.code);
}

代码 super 简单,但我看不出有什么问题!

最佳答案

本地 URL cordova.file.applicationDirectory 适用于 iOS 但不适用于 Android。您必须遍历 cordova.file.dataDirectory,直到找到/res 目录作为 GUID 命名的应用程序目录的子目录。

尝试以下操作:

var dirEntry = function (entry) {
var dirReader = entry.createReader();
dirReader.readEntries(
function (entries) {
$.each(entries, function (n, i) {
if (i.isDirectory === true) {
if (i.nativeURL.indexOf('www/res') > -1) {
//found the target /res directory
var path = i.nativeURL + '/myfile.txt';
window.resolveLocalFileSystemURL(path, app.gotFile, app.fail);
return false; //no need to iterate more
} else {
// Recursive -- call back into this subdirectory
dirEntry(i);
}
}
});

},
function (error) {
console.log("readEntries error: " + error.code);
}
);
};

var dirError = function (error) {
console.log("getDirectory error: " + error.code);
};

window.resolveLocalFileSystemURL(cordova.file.dataDirectory, dirEntry, dirError);

关于javascript - PhoneGap/Cordova for android 文件插件错误代码 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35192695/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com