From ab8f01284ab986d8fa47de54b121f8027752a4e9 Mon Sep 17 00:00:00 2001 From: Alexander Bakker Date: Sat, 11 Jan 2020 12:56:03 +0100 Subject: [PATCH] Remove EXTERNAL_STORAGE permissions As we switched to the SAF, we don't need these permissions anymore. --- app/src/main/AndroidManifest.xml | 4 +- .../aegis/ui/MainActivity.java | 4 -- .../aegis/ui/PreferencesFragment.java | 40 ++----------------- 3 files changed, 5 insertions(+), 43 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 099e395a..b90e967b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -5,8 +5,6 @@ - - @@ -22,7 +20,7 @@ tools:replace="android:theme"> + android:label="@string/title_activity_about" /> diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java index a841af8d..4aaeb09b 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java @@ -395,10 +395,6 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene } private void startScanImageActivity() { - if (!PermissionHelper.request(this, CODE_PERM_READ_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE)) { - return; - } - Intent galleryIntent = new Intent(Intent.ACTION_PICK); galleryIntent.setDataAndType(android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI, "image/*"); diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java index d49a271f..cbe23e91 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java @@ -1,6 +1,5 @@ package com.beemdevelopment.aegis.ui; -import android.Manifest; import android.app.Activity; import android.content.DialogInterface; import android.content.Intent; @@ -27,7 +26,6 @@ import com.beemdevelopment.aegis.crypto.KeyStoreHandle; import com.beemdevelopment.aegis.crypto.KeyStoreHandleException; import com.beemdevelopment.aegis.helpers.BiometricSlotInitializer; import com.beemdevelopment.aegis.helpers.BiometricsHelper; -import com.beemdevelopment.aegis.helpers.PermissionHelper; import com.beemdevelopment.aegis.importers.AegisImporter; import com.beemdevelopment.aegis.importers.DatabaseImporter; import com.beemdevelopment.aegis.importers.DatabaseImporterEntryException; @@ -73,10 +71,6 @@ public class PreferencesFragment extends PreferenceFragmentCompat { private static final int CODE_EXPORT = 5; private static final int CODE_EXPORT_ENCRYPT = 6; - // permission request codes - private static final int CODE_PERM_IMPORT = 0; - private static final int CODE_PERM_EXPORT = 1; - private Intent _result; private VaultManager _vault; @@ -163,7 +157,7 @@ public class PreferencesFragment extends PreferenceFragmentCompat { importPreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { - onImport(); + startImport(); return true; } }); @@ -177,12 +171,11 @@ public class PreferencesFragment extends PreferenceFragmentCompat { } }); - Preference exportPreference = findPreference("pref_export"); exportPreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { - onExport(); + startExport(); return true; } }); @@ -369,23 +362,6 @@ public class PreferencesFragment extends PreferenceFragmentCompat { updateEncryptionPreferences(); } - @Override - public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { - if (!PermissionHelper.checkResults(grantResults)) { - Toast.makeText(getActivity(), R.string.permission_denied, Toast.LENGTH_SHORT).show(); - return; - } - - switch (requestCode) { - case CODE_PERM_IMPORT: - onImport(); - break; - case CODE_PERM_EXPORT: - onExport(); - break; - } - } - @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { if (data == null) { @@ -425,11 +401,7 @@ public class PreferencesFragment extends PreferenceFragmentCompat { getActivity().setResult(Activity.RESULT_OK, _result); } - private void onImport() { - if (!PermissionHelper.request(getActivity(), CODE_PERM_IMPORT, Manifest.permission.READ_EXTERNAL_STORAGE)) { - return; - } - + private void startImport() { Map> importers = DatabaseImporter.getImporters(); String[] names = importers.keySet().toArray(new String[0]); @@ -584,11 +556,7 @@ public class PreferencesFragment extends PreferenceFragmentCompat { startActivityForResult(intent, CODE_SELECT_ENTRIES); } - private void onExport() { - if (!PermissionHelper.request(getActivity(), CODE_PERM_EXPORT, Manifest.permission.WRITE_EXTERNAL_STORAGE)) { - return; - } - + private void startExport() { // TODO: create a custom layout to show a message AND a checkbox final AtomicReference checked = new AtomicReference<>(true); AlertDialog.Builder builder = new AlertDialog.Builder(getActivity())