Android получает разрешение на доступ к папке "/data" с помощью Roottools?

Я работаю над Файловым менеджером и хочу получить root-доступ к папке /data. Я хочу создавать и поддерживать объекты File из этого каталога. Как я могу сделать это? Вот что я попробовал до сих пор..

if (RootTools.isRootAvailable()) {
   File file = new File("/data");
 //here is where the app crashed, and I got a null pointer exception.
} else {
    // do something else
}

1 ответ

Rooting позволяет всем установленным пользователем приложениям запускать привилегированные команды, обычно недоступные для устройств в стандартной конфигурации. Рутинг необходим для более сложных и потенциально опасных операций, включая изменение или удаление системных файлов, удаление приложений, установленных на носителе или производителе, и низкоуровневый доступ к самому оборудованию (перезагрузка, управление индикаторами состояния или повторная калибровка сенсорных входов.) Типичный Установка с правами root также устанавливает приложение Superuser, которое контролирует приложения, которым предоставлены права root или superuser.

Из Википедии

Если вы используете Roottools, этого будет достаточно:

if (RootTools.isRootAvailable()) {
    // su exists, do something
} else {
    // do something else
}

Это простая проверка root, но как только вы запустите этот код, вы увидите приглашение su (если ваше устройство рутовано), и как только вы предоставите доступ к своему приложению, у вас будут права суперпользователя.

PS: Вам может потребоваться изменить права доступа к папке /data для записи.

Другие вопросы по тегам