トリックは非常に簡単です。データベースを閉じないで、DBHelper
をリセットしてください。 。
したがって、reopenメソッドは次のようになります。-
public static void reopen(Context context) {
instance = new DBHelper(context);
}
もちろん、アプリを閉じて再起動するようにユーザーに指示するテキストを削除することもできます。
したがって、正常な復元を検出して報告するコードは次のようになります。-
if(copytaken && origdeleted && restoredone) {
errlist.add("Database successfully restored.");
resulttitle = "Restore was successful.";
DBHelper.reopen(context); <== implemented as below
}