iOS で正常に動作する Sencha Touch 2.0 アプリケーションを入手しました。しかし、Android では、PhoneGap 2.2.0 の LocalFileSystem オブジェクトに少し問題があります。私のindex.htmlには、PhoneGap doc で提供されている次のコードがあります。
<script type="text/javascript" charset="utf-8" src="cordova-2.2.0.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log('onDeviceReady');
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
}
function onFileSystemSuccess(fileSystem) {
console.log(fileSystem.name);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
しかし、「deviceready」イベントは決して発生しません。コンソールに出力はありません。そのため、LocalFileSystem を機能させることができません。deviceready 用の eventListener を追加する本体の onload イベントに関数呼び出しを追加してみました。関数が呼び出されますが、やはり deviceready は起動されません。これを機能させ、後で Sencha Touch の起動機能を呼び出す正しい方法は何ですか? Android API 14、16、および 17 のシミュレーターと、Android 4.0.3 の Galaxy Tab で試しました。