我正在尝试读取Phonegap中的本地文件来加载应用程序的语言字符串,我无法使其工作:(
代码非常简单:
var pathToLocalFile = "/home/user/android/assets/www/js/";
var langCache = new FileReader();
langCache.onload = function(data){
col = JSON.parse(data);
refreshAllStrings();
};
langCache.onerror = function(err){
debug.error(err);
};
langCache.readAsText(pathToLocalFile+currentLang+'.json');
此代码在Ripple仿真器上不起作用,我将其替换为
var pathToLocalFile = "file:///android_asset/www/js/";
在android的情况下,具有相同的结果:
Uncaught TypeError: Object #<Console> has no method 'warning' cordova-2.4.0.js:2616
initRead cordova-2.4.0.js:2616
FileReader.readAsText cordova-2.4.0.js:2660
loadLanguage
在Ripple模拟器中,我使用google-chrome启动了Chrome -allow-file-access-from-files,Android配置和清单具有设置的所有权限和插件.
当然我错过了什么,但不知道这可能是什么?
问候.
解决方法:
如果文件位于应用程序的www文件夹下,则无需添加“/ home / ..”或“file:///”.您应该能够使用“AJAX”提取加载内容,即使它已捆绑在应用程序中.
$.get('js/filename.ext');