Thủ thuật rất đơn giản, không đóng cơ sở dữ liệu chỉ cần đặt lại DBHelper
.
Vì vậy, phương pháp mở lại có thể là:-
public static void reopen(Context context) {
instance = new DBHelper(context);
}
Tất nhiên, bạn cũng có thể loại bỏ văn bản yêu cầu người dùng đóng và khởi động lại ứng dụng.
Vì vậy, mã phát hiện và báo cáo về việc khôi phục thành công có thể là:-
if(copytaken && origdeleted && restoredone) {
errlist.add("Database successfully restored.");
resulttitle = "Restore was successful.";
DBHelper.reopen(context); <== implemented as below
}