Используя программу эмуляции терминала termux ( https://termux.com ), я набираю следующую команду:
ls /sdcard
Я получаю следующую ошибку:
ls: can't open '/sdcard': Permission denied
Понимая, что каталог / sdcard на Android - это символическая ссылка, я попытался найти местоположение фактического каталога - узнав, что это не просто символическая ссылка, а символическая ссылка на другую символическую ссылку, а фактический каталог - / storage / emulated / 0
Итак, наконец, я напечатал:
ls -ld /storage/emulated/0
Результат, который я получил, был:
drwxrwx--x 63 root sdcard_r 4096 Aug 10 12:04 /storage/emulated/0
Итак, вкратце --- я не знаю, использовался ли termux для запуска с разрешениями группы sdcard_r или o- разрешения, используемые для разрешения чтения-записи, - но мне нужно знать, какой из двух он был раньше, и как все исправить - ведь возможность доступа к содержимому внутренней SD-карты очень важна.
Нет, мое устройство не имеет root-прав, и я не планирую его рутировать - поэтому я не могу предоставить какую-либо информацию, которую мне пришлось бы получить для рутирования устройства. Однако отсутствие рутования никогда не препятствовало мне иметь доступ на чтение к каталогу / sdcard - так что это ново (и тревожно).
Конечно, прошло уже несколько месяцев с тех пор, как я пытался это сделать ранее, но это новое ограничение для Android серьезно препятствует удобству использования termux и тому, кто знает, что еще, поскольку мне нужно иметь доступ к файлам, которые на моей SD-карте. (Я все еще могу многое, даже если не все, даже без разрешения на запись - но я почти застрял в воде, если не могу получить разрешения на чтение, как в настоящее время).
READ_EXTERNAL_STORAGE
разрешение, поэтому он должен иметь доступ.