アプリの開発に Phonegap を使用しています。Backbone.js を使用してロジックを実装しました。サーバーから XML ファイルを取得し、そのデータをアプリで使用します。これを担当するコードは次のとおりです。
var CategoryCollection = Backbone.Collection.extend({
url:'http://www.someServer/someFile.xml',
fetch: function(options) {
options || (options = {});
options.dataType = 'xml';
Backbone.Collection.prototype.fetch.call(this, options);
},
parse: function(data) {
return $(data).find('someTag').map(function() {
return {
code:$(this).attr('code'),
title : $(this).attr('title'),
value : innerHtml
};
}).get();
}
});
ただし、インターネット接続を必要とせずに、インストール時にこの XML データをローカルで利用できるようにする方法を見つける必要があります。これは、家にいるときにアプリをダウンロードすることができる旅行者向けのアプリですが、インターネットにアクセスできない場合は、家を離れているときにのみ実行します。
だから私はPhoneGap File APIを使用することを考えましたが、それがどのように機能するのか、アプリの初回実行時にファイルにアクセスできるようにファイルをどこに配置できるのかを理解するのに苦労しています。
さらに、ユーザーがインターネットに接続していて、サーバーに新しいバージョンの XML ファイルがあることをアプリが検出した場合、ローカルに保存されている XML をアプリに更新してもらいたいと考えています。
私は、localStorage
または他の何かなど、この問題に対するあらゆる種類の解決策を受け入れています。
いくつかの提案をいただければ幸いです。
よろしく。