У меня есть приложение для редактирования фотографий для Android, в котором пользователи могут выбрать выходной каталог результатов. Проблема заключается в том, что Google внесла изменения в разрешение на запись SDK с версией KITKAT, а устройства с версией Android KITKAT не позволят приложениям записывать вторичные SD-карты. Теперь мне нужно проверить, предоставил ли выбранный каталог пользователю разрешение и не выбросит ошибку EACCES. Я уже проверяю canRead и canWrite, но это не поможет. Не могли бы вы рассказать мне, как я могу проверить, не выбрал ли выбранный каталог EACCES. Мое единственное решение пытается записать файл в try catch, однако я надеюсь, что есть лучший способ сделать это.
[обновление k3b 2016-09-19]
Я пробовал это на своем Android-4.4, но без успеха
Uri uri = Uri.fromFile(file);
int permissionCode =
context.checkCallingOrSelfUriPermission(uri,
Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
if (permissionCode == PackageManager.PERMISSION_DENIED) {
// on my android-4.4 i always get PERMISSION_DENIED even
// if i can overwrite the file
return false;
}