2011-10-28 4 views
0

私は、さまざまなソースからのRSSフィードを解析しているAndroidアプリケーションを作成しています。私がやっていることは、リモートサーバー上で、すべてのRSSフィードを1つの大きなXMLファイルにまとめて、各サイトに個別に行くのではなく、SAXパーサーを使ってデバイス上で解析することです。だから、私は基本的にパフォーマンスのRSSフィードをキャッシングしていて、うまくいきます。異なるソースからのXMLの解析

私がしたいのは、ユーザーに表示するフィードソースを選択するオプションです。したがって、サイトA、B、Cをキャッシュしている場合、ユーザーはサイトAとCのみを表示することを選択できます。XMLキャッシュを設定する最良の方法は不明です。私は、小さなXMLファイルを作成するか、大きな1つのXMLファイルにとどまり、ユーザーが解析したくないアイテムを削除することができます。

モバイルデバイスに最適なデザインが不明です。より小さなファイルや大きなファイルを1つパースする方が効率的ですか?

+0

ここでは、サーバー上の1つのソースだけが「より良い」(キャッシュが確実に存在する可能性がある)とは見えません。複数のソースはより多くの接続を必要としますが、それは比較的少数であり、分割されたソースにはもっと多くのデータを含めることはできません。個々のフェッチ=ダウンロードされたデータのみ - 結合されたソースが何かをやっていない限り*フィードデータを結合することについては本当に巧妙です*。 –

答えて

0

データを別のファイルに分割することの利点の1つは、1回限りの操作であることです。したがって、サーバーから初めて取得したとき(遅いかもしれませんが)、別のファイルに分割しますが、このデータを再利用すると、ファイルからロードするだけで後でフィルター処理する必要はありません。したがって、オプションA、B、またはCを選択すると、ユーザーはより迅速に表示されます。

ただし、データを一度しか使用しないと、この利点はありません。

+0

私は、リクエストごとに1回だけデータを使用します。データは一度の使用であるため頻繁に変更されます。 –

+0

その場合、サーバー上のデータを分割して複数のファイルを送信することは可能ですか?私はそれがまだデバイス上での処理を節約すると思います。 – Craigy

+0

確かに、それらを別のファイルに分割するような音が最善のアプローチです。 –