diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Backup.java b/app/src/main/java/com/fongmi/android/tv/bean/Backup.java index 1c2344e87..e0e903417 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Backup.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Backup.java @@ -33,11 +33,11 @@ public class Backup { public void restore() { AppDatabase.get().clearAllTables(); - for (History item : getHistory()) item.save(); - for (Config item : getConfig()) item.save(); - for (Site item : getSite()) item.save(); - for (Live item : getLive()) item.save(); - for (Keep item : getKeep()) item.save(); + AppDatabase.get().getKeepDao().insertOrUpdate(getKeep()); + AppDatabase.get().getLiveDao().insertOrUpdate(getLive()); + AppDatabase.get().getSiteDao().insertOrUpdate(getSite()); + AppDatabase.get().getConfigDao().insertOrUpdate(getConfig()); + AppDatabase.get().getHistoryDao().insertOrUpdate(getHistory()); } public static Backup objectFrom(String json) { diff --git a/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java b/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java index 43f4623b9..4afbe050b 100644 --- a/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java +++ b/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java @@ -64,14 +64,14 @@ public abstract class AppDatabase extends RoomDatabase { public static void restore(File file, com.fongmi.android.tv.impl.Callback callback) { App.execute(() -> { - File cache = Path.cache("restore"); - FileUtil.gzipDecompress(file, cache); - Backup backup = Backup.objectFrom(Path.read(cache)); + File restore = Path.cache("restore"); + FileUtil.gzipDecompress(file, restore); + Backup backup = Backup.objectFrom(Path.read(restore)); if (backup.getConfig().isEmpty()) { App.post(callback::error); } else { backup.restore(); - Path.clear(cache); + Path.clear(restore); App.post(callback::success); } });