でローカルファイルを読むコードは非常に簡単です::(私は、アプリケーションのための言語の文字列をロードするためのPhoneGapでローカルファイルを読み込むしようとしていると私はそれを動作させることができない</p> <p>を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');
このコードは、リップルエミュレータ上で動作しないと私は同じ結果と、アンドロイドの場合
var pathToLocalFile = "file:///android_asset/www/js/";
でそれを置き換える:
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
リップルエミュレータでは、google-chrome -–allow-file-access-from-files
でChromeを開始しました。Androidの設定とマニフェストにはすべての権限とプラグインが設定されています。
もちろん、私は何か不足していますが、これが何であるか考えていませんか?
よろしくお願いいたします。
申し訳ありませんが、私はちょうど1つのことを明確にする必要があります。 AndroidアプリのwwwディレクトリにJSファイルを読み込もうとしていますか? –
ええ、まさに、それは私が望むものです、アプリケーションパッケージにあるファイルを動的にロードする方法です(私はFileReadが動作すると思われます、私は他の提案にもオープンしています) –
ええ、FileReaderはアプリケーションと共にパッケージ化されたファイル。これらのファイルを読むことは、AJAXを使って@codemonkeyの答えに従って行うのが最適です。 –