0
を否定しました。私がボタンを押すと、スーパーユーザーはrootのアクセス権を正しく要求しますが、それでもログに拒否されたアクセス許可が表示されます。E/[エラー]:SH:/データ/データ/:許可は、私は</p> <pre><code>E/[Error]: sh: /data/data/: Permission denied </code></pre> <p>//データ/データに移動しようとする。しかし、私はなぜ理解していない、なぜ私はこのエラーを取得しています
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnCon = (Button)findViewById(R.id.button1);
btnCon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RunWithRoot("su shell /data/data/");
}
});
}
private void RunWithRoot(String textView) {
try {
String line;
Process process = Runtime.getRuntime().exec(textView);
OutputStream stdin = process.getOutputStream();
InputStream stderr = process.getErrorStream();
InputStream stdout = process.getInputStream();
stdin.write(("ls\n").getBytes());
stdin.write("exit\n".getBytes());
stdin.flush();
stdin.close();
BufferedReader br =
new BufferedReader(new InputStreamReader(stdout));
while ((line = br.readLine()) != null) {
Log.d("[Output]", line);
}
br.close();
br =
new BufferedReader(new InputStreamReader(stderr));
while ((line = br.readLine()) != null) {
Log.e("[Error]", line);
}
br.close();
process.waitFor();
process.destroy();
} catch (Exception ex) {
}
}
私の理解のために、誰かがこれをより良く理解するのを助けてくれることを願っています。 rootは一番上の許可です。