Browse Source

fix: File permissions for Android 13+

develop
Ezerous 5 months ago
parent
commit
1777b34f86
  1. 6
      app/build.gradle
  2. 18
      app/src/main/java/gr/thmmy/mthmmy/base/BaseActivity.java

6
app/build.gradle

@ -7,14 +7,14 @@ apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
android {
compileSdkVersion 33
defaultConfig {
applicationId "gr.thmmy.mthmmy"
compileSdk 33
minSdkVersion 23
targetSdkVersion 33
versionCode 32
versionName "2.2.0"
versionCode 33
versionName "2.2.1"
archivesBaseName = "mTHMMY-v$versionName"
buildConfigField "String", "CURRENT_BRANCH", "\"" + getCurrentBranch() + "\""
buildConfigField "String", "COMMIT_HASH", "\"" + getCommitHash() + "\""

18
app/src/main/java/gr/thmmy/mthmmy/base/BaseActivity.java

@ -18,7 +18,9 @@ import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.text.Html;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
@ -695,12 +697,15 @@ public abstract class BaseActivity extends AppCompatActivity {
//True if permissions are OK
protected boolean checkPerms() {
Timber.i("Checking storage permissions.");
String[] PERMISSIONS_STORAGE = {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE};
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU){
String[] PERMISSIONS_STORAGE = {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE};
return !(checkSelfPermission(PERMISSIONS_STORAGE[0]) == PackageManager.PERMISSION_DENIED ||
checkSelfPermission(PERMISSIONS_STORAGE[1]) == PackageManager.PERMISSION_DENIED);
return !(checkSelfPermission(PERMISSIONS_STORAGE[0]) == PackageManager.PERMISSION_DENIED ||
checkSelfPermission(PERMISSIONS_STORAGE[1]) == PackageManager.PERMISSION_DENIED);
}
return true;
}
//Display popup for user to grant permission
@ -735,7 +740,8 @@ public abstract class BaseActivity extends AppCompatActivity {
prepareDownload(thmmyFile);
else {
tempThmmyFile = thmmyFile;
requestPerms(DOWNLOAD_REQUEST_CODE);
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU)
requestPerms(DOWNLOAD_REQUEST_CODE);
}
}

Loading…
Cancel
Save