2011-02-02 12 views
0

私はjavaでサーバー側アプリケーションを開発していましたが、今ではいくつかのモバイルアプリケーションを提供するように求められています。問題は、私はアプリにどのくらいのデータを送るべきであるかということにいつも不満を抱いていますか? 大きなXML文書を転送する必要がある場合は、要件ごとにノードごとにノードを送信する必要があります。はいの場合、電話バッテリをもっと消費することはありません(電話がすべてのノードに対して新しい接続を作成するため) 。一度に文書全体を送信することに決めた場合、クライアントが文書全体をダウンロードするのに時間がかかることがあり、一時的に文書を保存する際に問題が発生する可能性があります...さらに、データの2つのコピーにデータの不一致が生じることがあります。要するに、私は「あまりにも高価なモバイルデバイス用の接続の作成ですか」を知る必要があります。どんなアプローチが良いですか?複数の接続を作成するか、1つの接続ですべてのデータを一緒に受信することによって、データをチャンクで受信します。モバイルアプリケーションのWebサービスを開発する際の設計上の考慮

モバイルクライアント用のWebサービスを開発する際に、イメージURIまたはイメージデータ(バイト配列)を送信する必要がありますか?

ありがとうございました。

答えて

1

可能な限りダウンロードする必要があります。 あなたの質問に答えるアプリケーションです。 1000アイテムのリストをダウンロードしないでください。ちょうど10をロードし、ユーザーがスクロールダウンするのを待ち、次にロードします。10.アイテムをキャッシュします。

初心者にはデータをダウンロードしているユーザを登録しているような、ちょっとしたやり方があります。初回はアプリを使い、必要なだけ多くのものをダウンロードして初めて呼び出す読み込み中。ユーザーがダウンロードしたものを登録します。ユーザuからの次のコールは、変更されたデータのみを彼に送り、クライアントデバイス上で実行する変更をこのデータと共に送信する。

1

モバイルクライアントの場合、レイテンシはデータパッケージのサイズを超えてしまいます。あなたが消費するよりも多くのデータを送るべきではありませんが、ノードごとにノードを使用するのは良い方法ではありません。これは、ユーザーエクスペリエンスの回答と同じくらいバッテリーの応答ではありません。

モバイル用に設計する最良の方法は、食事の正しいサイズを見つけることです。言い換えれば、一度に10,000レコードを送信するのではなく、一度に10行1列のグリッドを送信しません。

画像サイズによっては、画像を直接送信する必要があります(base64エンコーディングは一般的です)。リンクとしてではありません。例外は、ユーザーをWebページに送信して閲覧させることですが、実際には「モバイルアプリケーション」ではありません。

関連する問題