From 4f7059438d68eb67b67132dc0f12f4bb0ef29252 Mon Sep 17 00:00:00 2001 From: EYALIN Date: Tue, 11 Jul 2023 10:57:36 +0300 Subject: [PATCH 1/7] fix Android 13 write permissions in Android 13 we don't need to ask for permissions --- src/android/FileUtils.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index d12aa52a..20bb73f3 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -543,8 +543,11 @@ private void getReadPermission(String rawArgs, int action, CallbackContext callb } private void getWritePermission(String rawArgs, int action, CallbackContext callbackContext) { - int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); + int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); + if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + } else { PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); + } } /** @@ -567,7 +570,11 @@ private boolean hasReadPermission() { } private boolean hasWritePermission() { - return PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); + if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + return true; + } else { + return PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); + } } private boolean needPermission(String nativeURL, int permissionType) throws JSONException { From 6fbfd996fc539e778b567f935268d35285d41aa3 Mon Sep 17 00:00:00 2001 From: EYALIN Date: Fri, 18 Aug 2023 08:10:43 +0300 Subject: [PATCH 2/7] Indent file --- src/android/FileUtils.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index 20bb73f3..9426d9a8 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -543,11 +543,11 @@ private void getReadPermission(String rawArgs, int action, CallbackContext callb } private void getWritePermission(String rawArgs, int action, CallbackContext callbackContext) { - int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); + int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - } else { - PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); - } + } else { + PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); + } } /** From 0111fd3ea8eb112b2ab18e32af9c3576c266bbaa Mon Sep 17 00:00:00 2001 From: Erisu Date: Wed, 18 Oct 2023 07:37:44 +0900 Subject: [PATCH 3/7] revert(android): changes previously made to getWritePermission --- src/android/FileUtils.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index 9426d9a8..59e302f7 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -543,11 +543,8 @@ private void getReadPermission(String rawArgs, int action, CallbackContext callb } private void getWritePermission(String rawArgs, int action, CallbackContext callbackContext) { - int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); - if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - } else { - PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); - } + int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); + PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); } /** From 28318ff2805c426289ce57155dad9e7bf306b82f Mon Sep 17 00:00:00 2001 From: Erisu Date: Wed, 18 Oct 2023 07:39:07 +0900 Subject: [PATCH 4/7] refactor(android): simplify hasWritePermission and fix formatting --- src/android/FileUtils.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index 59e302f7..e9d517b9 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -567,11 +567,9 @@ private boolean hasReadPermission() { } private boolean hasWritePermission() { - if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - return true; - } else { - return PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); - } + return android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU + ? true + : PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); } private boolean needPermission(String nativeURL, int permissionType) throws JSONException { From dd1cdb284777afe1133b0f997a77722c61a551f6 Mon Sep 17 00:00:00 2001 From: Erisu Date: Wed, 18 Oct 2023 07:42:19 +0900 Subject: [PATCH 5/7] fix(android): add comment suggestion to hasWritePermission --- src/android/FileUtils.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index e9d517b9..1fa83fe4 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -567,6 +567,7 @@ private boolean hasReadPermission() { } private boolean hasWritePermission() { + // Starting with API 33, requesting WRITE_EXTERNAL_STORAGE is an auto permission rejection return android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU ? true : PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); From ec7ab33dedeaa63415ae0c82f811346f6cef96df Mon Sep 17 00:00:00 2001 From: Erisu Date: Wed, 18 Oct 2023 07:45:15 +0900 Subject: [PATCH 6/7] style(android): applied Android Studio code formatting --- src/android/FileUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index 1fa83fe4..25b2105a 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -569,8 +569,8 @@ private boolean hasReadPermission() { private boolean hasWritePermission() { // Starting with API 33, requesting WRITE_EXTERNAL_STORAGE is an auto permission rejection return android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU - ? true - : PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); + ? true + : PermissionHelper.hasPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); } private boolean needPermission(String nativeURL, int permissionType) throws JSONException { From bccbb5569f4af74dee88fc29719a6b228e9aa5b4 Mon Sep 17 00:00:00 2001 From: Erisu Date: Wed, 18 Oct 2023 08:03:15 +0900 Subject: [PATCH 7/7] fix(android): add comment suggestion to getWritePermission for extra prevention --- src/android/FileUtils.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/android/FileUtils.java b/src/android/FileUtils.java index 25b2105a..0edf90a0 100644 --- a/src/android/FileUtils.java +++ b/src/android/FileUtils.java @@ -543,8 +543,10 @@ private void getReadPermission(String rawArgs, int action, CallbackContext callb } private void getWritePermission(String rawArgs, int action, CallbackContext callbackContext) { - int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); - PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); + if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { + int requestCode = pendingRequests.createRequest(rawArgs, action, callbackContext); + PermissionHelper.requestPermission(this, requestCode, Manifest.permission.WRITE_EXTERNAL_STORAGE); + } } /**