Я пытаюсь получить доступ к папке моего приложения с data/data
, но ему необходимо изменить разрешение на 0777
. Таким образом, я использовал код, который может меняться во время выполнения, но разрешения не меняются. Это дает мне ошибку open failed: EACCES (Permission denied)
. Я также поставил это разрешение в файле манифеста ниже Зефир мне нужно дать, как в корневом проводнике, где мы изменяем rwxrwxrw папкунеобходимо получить доступ к системному разрешению
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Вот это мой код
String[] command = new String[]{"/system/bin/ls", "0777",
"/data/data/com.ayub.android.baba" };
process = Runtime.getRuntime().exec(command);
BufferedReader reader = new BufferedReader(
new InputStreamReader(process.getInputStream()));
int read;
String output = "";
String line;
while ((line = reader.readLine()) != null) {
output.concat(line + "\n");
Log.w("myApp", "[[output]]:" + line);
process.waitFor();
}
reader.close();
process.waitFor();
} catch (Exception e) {
Toast.makeText(this, e.toString(), Toast.LENGTH_SHORT).show();
Log.d(TAG,e.toString());
}
Вам нужно для добавления разрешения runtime перед доступом к любым опасным разрешениям. –
'ls' не подходит для изменения разрешения. –
https://developer.android.com/training/permissions/requesting.html –