Web サービス (果物など) からロードされたいくつかのアイテムを表示するアプリケーションを取得しました。これらの項目はめったに変更されません。また、それらの商品の在庫状況を表示することもできます (例: リンゴの場合、店舗 A では今日 10 kg、明日は 20 kg、...)
ユーザーは、自分の電話でこれらのアイテムの一部をブックマークできます。ユーザーがこれらのアイテムのいくつかをブックマークできるようにし、ブックマークをデバイス間で同期できるようにする必要があります (私は携帯電話でリンゴをブックマークしています。次にタブレットでアプリを開いたときにリンゴがブックマークされていることを期待しています)。
多かれ少なかれ、私は約40個のアイテムを手に入れました。また、各可用性データは合計で約 200 エントリになります。
それを実装するには、どの手法を使用しますか?
これまでの私の考え:
- 果物と可用性の sqlite データベースを (contentprovider を使用して) 構築します
- この DB を 2/3 日ごとに同期します (これで十分です。これ以上頻繁に行う必要はありません)。
- BackupAgent を使用して DB ファイル全体を同期します
データベースはやり過ぎだと思いますか? アプリケーションは常にネットワーク接続で実行されることが期待されます (それ以外の場合は許可されません)。
私の他のオプションは次のとおりです。
- アプリケーション起動時の読み込みアイテムと在庫状況
- ブックマークは SharedPreferences 内に保持されます
- BackupAgent を使用して SharedPreferences のみを同期します
これはそれほど複雑ではなく、同期部分でより効率的です。ただし、それは実際にはクリーンな方法ではなく、将来性が低いと感じています。