データベースから Android タブレットへのデータの同期に関するベスト プラクティスに興味があります。
テーブル:
- Part1
- Part2
- Part3
- Part4
- Part5
タブレットでアプリを開くたびに、データベースから最新のリストを取得し、テーブルを切り捨てて、レコードを再度追加します。各テーブルは 400 レコードで構成されます。したがって、サーバーからデータを取得して追加するには、テーブルごとに約 60.45 かかります。私は5つのテーブルを持っているので、約5分かかります。私がやっていることを効率的に同期するためのより良い方法はありますか? サーバーからデータを取得した後、テーブルを切り捨てる代わりに、テーブルを追加する前に最初に存在するかどうかを確認しようとしましたが、時間はかかりませんでした。
私が現在行っていること: API サーバーから JSON リストを取得し、テーブルを切り捨てて行を追加し直します。それぞれ 500 レコードの 5 つのテーブルでかなり時間がかかります。
libraryApp = (LibraryApp) act.getApplication();
List<Pair> technicians = getJsonData("get_technicians");
if(technicians.size() > 0) {
stiLibraryApp.getDataManager().emptyTechnicianTable(); // truncate current table
// add technicians back to database
for(Pair p : technicians) {
libraryApp.getDataManager().saveTechnician(new Technician((Integer) p.key(), (String) p.value()));
}
}