我有这样的问题,我尝试以编程方式从 logcat 获取数据。清单文件中也添加了权限:
<uses-permission android:name="android.permission.READ_LOGS"/>
代码:
new Thread(new Runnable() {
@Override
public void run() {
try {
Process process = Runtime.getRuntime().exec("logcat ActivityManager:I *:S");
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = bufferedReader.readLine()) != null) {
reactOnString(line);
}
} catch (IOException e) {
}
}
}).start();
但是我看不到其他应用程序何时启动。我正在等待像下面这样的字符串,但它们没有出现。
2260-2566/system_process I/ActivityManager: Start proc com.android.email for activity com.android.email/.activity.MessageCompose: pid=6460 uid=10011 gids={50011, 3003, 1015, 1023, 1028}
PS 此代码在服务中运行。