#java #android #permissions #storage #android-permissions
Вопрос:
В настройках приложения для Android есть в основном 3 типа разрешений на хранение:
Для моего приложения требуется наивысшее разрешение, поэтому я использую lt;uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/gt;
manifest.xml
его .
Теперь я хочу заблокировать все приложение, если разрешение не будет предоставлено. Поэтому я попытался использовать этот код, чтобы проверить, предоставлено ли наивысшее разрешение, но он всегда возвращает false.
if(ActivityCompat.checkSelfPermission(requireActivity(), Manifest.permission.MANAGE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
Я также пробовал использовать WRITE_EXTERNAL_STORAGE
, но он также возвращает значение true при втором варианте «Разрешить доступ только к мультимедиа».
Вывод
Я ищу boolean
функцию:
- Возвращает значение true, если выбран параметр «Разрешить управление всеми файлами».
- Возвращает значение false, если выбран параметр «Разрешить доступ только к носителям».
- Возвращает значение false, если выбрано «Запретить»
Спасибо.
Комментарии:
1. работает ли ваше приложение при выборе пользователем
Allow access to media only
.2. @VishalBeep Нет, это не так.
3. @blackapps Большое вам спасибо. Это именно то, что я искал 🙂
Ответ №1:
Environment.isExternalStorageManager().