0

Web サービスを使用してそのユーザーの現在の XML ファイルを取得する現在のシステムとやり取りするアプリケーションを作成しています。

XML ファイルは、アプリケーションが起動するたびに更新する必要があります。ただし、インターネット接続が利用できない場合は、アプリケーションはアプリ バンドル内のベース XML ファイルを使用して特定のフィールドに入力する必要があります。

アプリケーションは現在、XML ドキュメントの取得と処理に長い時間を費やしているか、ベース XML の使用を決定しています。これは仕事用のプロジェクトであるため、表示用のコードを投稿することは許可されていません。

XML ドキュメントは、アプリケーションによって利用される sqlite DB に書き込まれます。ユーザーがアプリケーションで何かを実行できるようになる前に、このプロセス全体を完了する必要があります。

問題は、現在の形式でこのプロセスを高速化する方法があるかどうかです...現在の形式は、SQLServer DB から要求されたファイルを XML で出力する Web サービスです。アプリ内でより迅速に使用できる他の種類のファイルを出力する新しい Web サービスを構築する方がよいでしょうか?

4

1 に答える 1

0

そのため、大量のデータ ストレージが原因でアプリが遅くなります。現在、私は同様のことをしなければならない同様のプロジェクトにも取り組んでいます。今私が見つけたのは、サーバーから取得するデータが大量であるため、メインスレッドで実行してはならないということです。それがあなたの時間を取っているものです。したがって、解決策は、別のキュー/スレッドですべての取得を行うことです。すべてのバックエンド データをそのキューにディスパッチできます。データの一部が保存された後、メイン キューでユーザーに表示を開始できます。一方、使用される別のキューは、すべてのデータをデータベースに保存します。つまり、データの一部を保存して表示するようなものです。その実装については、開発者サイトの GCD/Threads/その他のチュートリアルを読むことができます。

于 2013-08-01T05:29:03.320 に答える