0

私はAndroid用のアプリを作成します。これは、Androidデバイスにあるデータベースを外部データベースと同期します。要するに、Androidはいくつかのデータを生成し、それを独自のデータベースに保存します。Androidは、このデータをインターネット経由でHTTPサーバーに送信することがあります。このデータをXMLまたはJSONで送信する方がよいのではないかと思います。JSONはXMLよりもはるかに軽いことを知っていますが、XMLはJSONに何らかの利点がありますか?データベースを同期するのに良いことは何ですか?

4

4 に答える 4

2

私はjsonと言います....jsonはより軽量であり、探しているのが単にデータを渡すことである場合、jsonはより速く、より簡単な方法です。私はしばらくの間jsonとxmlの両方を使用していますが、XMLが「見栄え」が良いことを除いて、jsonよりもxmlを好む理由はまだ見つかりませんでした...

とにかく、既存の解析およびエンコードツール(JAXBなど)を使用している場合、jsonからxmlへの移行には2〜3行のコードが必要です。また、別のコードに切り替えることもできます...

于 2012-07-05T16:03:07.630 に答える
1

これがシングルユーザーアプリケーションなのかマルチユーザーアプリケーションなのかについては、まだ述べていません。分散データの同期は、解決するのが簡単な問題ではありません。

これがシングルユーザーソリューションの場合、データベースがレプリケーションをサポートしているかどうかを調査します。データセットが小さい場合は、データベースのダンプファイルを投稿することも検討します。どちらのソリューションも、XML/JSONとの間でデータをシリアル化することによるパフォーマンスのオーバーヘッドを回避します。また、データベースタイプのサポートの煩わしさを回避します。

最後に、「レフトフィールド」ソリューションの場合、データをcouchdbに保存することを検討してみませんか?クライアントサーバーレプリケーションが組み込まれています。

  • Android-Couchdb
  • pouchdbと呼ばれる新しいjavascriptクライアントがあり、評価する価値があります。
于 2012-07-05T19:31:11.290 に答える
1

JSONはXMLよりもはるかに軽量であり、私の意見では扱いやすい形式であるため、JSONをお勧めします。どちらかが仕事を成し遂げます。考慮すべき他のことは、データを傍受するためにHTTPサーバーで使用しているサービスです。あなたはあなた自身を書いていますか?あるフォーマットで他のフォーマットよりもうまく機能する可能性のある既存のフォーマットを使用しますか?

また、リモートデータベースに直接接続せず、そのように更新する理由はありますか?常に実行すると、アプリの速度が低下し、大量のデータ使用量が発生する可能性があることはわかっていますが、計画しているように控えめに実行するだけであれば、それほど大きな問題にはなりません。

于 2012-07-05T16:03:30.437 に答える
1

非常に大きなデータセットでは、開始タグと終了タグが必要なため、XMLは少し重くなります。タグ間のデータがどれだけ大きいかという問題もあります。タグの開始と終了の間に大量のデータがある場合、これにより効果が「緩和」されます。大量のデータを処理していない場合は、クライアントとサーバーの両方でネイティブライブラリのサポートが優れている方を使用します。中小規模のデータセットの場合、違いはあまり目立たないと思います。

于 2012-07-05T16:04:29.453 に答える