Android應用執行adb命令獲取一些需要的資訊
阿新 • • 發佈:2019-01-22
廢話不多說,直接上程式碼:
private void getInfo() {
BufferedReader reader = null;
String content = "";
try {
Process process = Runtime.getRuntime().exec("getprop ro.build.fingerprint");
reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
StringBuffer output = new StringBuffer();
int read;
char[] buffer = new char[1024];
while ((read = reader.read(buffer)) > 0) {
output.append(buffer, 0, read);
}
reader.close();
content = output.toString();
Log.d("manman", "content = " + content);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
上面的程式碼類似執行了如下操作:
adb shell getprop ro.build.fingerprint
不是所有的應用都能有許可權執行一些操作。有的是需要有相應的許可權的。比如應用有系統簽名,執行在系統程序,就有比較高的許可權。
這些主要是涉及到SElinux相關的內容。檢視配置可以看一些檔案節點的配置資訊: ls -Z