From 0df490dc55df6fda6177b678945b3caed34c64a0 Mon Sep 17 00:00:00 2001 From: gdlbo <41114720+gdlbo@users.noreply.github.com> Date: Mon, 3 Apr 2023 15:46:16 +0300 Subject: [PATCH] fixed perms --- .../ru/vtosters/lite/ui/components/BackupManager.java | 10 ++++++++++ .../main/java/ru/vtosters/lite/utils/VKAccountDB.java | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/app/src/main/java/ru/vtosters/lite/ui/components/BackupManager.java b/app/src/main/java/ru/vtosters/lite/ui/components/BackupManager.java index 61385b34e..7ecdfbc7f 100644 --- a/app/src/main/java/ru/vtosters/lite/ui/components/BackupManager.java +++ b/app/src/main/java/ru/vtosters/lite/ui/components/BackupManager.java @@ -8,6 +8,7 @@ import static ru.vtosters.lite.utils.AndroidUtils.getGlobalContext; import android.content.Context; import android.content.SharedPreferences; +import android.os.Build; import android.util.Log; import android.widget.Toast; @@ -27,6 +28,7 @@ import java.util.regex.Pattern; import ru.vtosters.lite.utils.AndroidUtils; import ru.vtosters.lite.utils.IOUtils; +import ru.vtosters.lite.utils.LifecycleUtils; import ru.vtosters.lite.utils.Preferences; public class BackupManager { @@ -49,6 +51,10 @@ public class BackupManager { return; } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + LifecycleUtils.getCurrentActivity().requestPermissions(new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 228); + } + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()); var dir = new File(getExternalStoragePublicDirectory(DIRECTORY_DOWNLOADS), "/VTLBackups/"); var file = new File(dir, "Onlines_" + dateFormat.format(new Date()) + ".xml"); @@ -65,6 +71,10 @@ public class BackupManager { } public static void backupSettings() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + LifecycleUtils.getCurrentActivity().requestPermissions(new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 228); + } + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd.HH-mm-ss", Locale.getDefault()); var file = new File(sBackupDir, "Backup_" + dateFormat.format(new Date()) + ".xml"); diff --git a/app/src/main/java/ru/vtosters/lite/utils/VKAccountDB.java b/app/src/main/java/ru/vtosters/lite/utils/VKAccountDB.java index c62c76cd3..e14d3f3af 100644 --- a/app/src/main/java/ru/vtosters/lite/utils/VKAccountDB.java +++ b/app/src/main/java/ru/vtosters/lite/utils/VKAccountDB.java @@ -6,6 +6,7 @@ import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.net.Uri; +import android.os.Build; import android.os.Environment; import android.util.Log; import com.vk.usersstore.contentprovider.a.UsersDbHelper; @@ -63,6 +64,10 @@ public class VKAccountDB { } public static void saveData() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + LifecycleUtils.getCurrentActivity().requestPermissions(new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 228); + } + var db = getDatabase().getReadableDatabase(); var dateFormat = new SimpleDateFormat("yyyy-MM-dd.HH-mm-ss", Locale.getDefault()); var file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/VTLBackups/saved_accounts_" + dateFormat.format(new Date()) + ".vtl");