Разрешение на чтение / запись в корневую папку в Android - PullRequest
0 голосов
/ 07 сентября 2018

Есть ли какие-либо разрешения, которые я могу / должен объявить в своем приложении,
если я хочу, чтобы приложение могло сканировать всю папку "/"
(скажем, для поиска всех .txt файлов, например, рекурсивно)?

Я получаю только null пока (при звонке File.listFiles)
независимо от того, какие разрешения я пытаюсь. Я думаю, что я что-то упустил.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Если вы не выполните рутирование своего устройства, невозможно выполнить какие-либо операции с корневым каталогом на некорневом устройстве, потому что стороннее приложение будет работать как обычный пользователь и не будет иметь прав доступа root.

Однако, согласно https://developer.android.com/reference/android/Manifest.permission, android.permission.FACTORY_TEST может дать вам разрешение root.

FACTORY_TEST добавлен на уровне API 1

общедоступная статическая конечная строка FACTORY_TEST

Запускать как тестовое приложение производителя, работая как пользователь root. Доступно только в том случае, если устройство работает у производителя тестовый режим.

Не для использования сторонними приложениями.

Постоянное значение: "android.permission.FACTORY_TEST"

Но учтите, что производители могут использовать это только путем изменения прошивки, и это не относится к библиотекам или приложениям третьих сторон.

0 голосов
/ 07 сентября 2018

Есть ли какие-либо разрешения, которые я могу / должен объявить в своем приложении?

Нет. Чтобы получить доступ к корневой папке (/), ваше приложение должно иметь разрешение root, которое пользовательское приложение не может иметь.

Если ваше устройство имеет root-права, вы можете попытаться повысить права root в приложении, что не является тривиальной задачей.

...