I have such a problem, I try to get data from logcat programatically. permission has also been added to manifest file:
<uses-permission android:name="android.permission.READ_LOGS"/>
Code:
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();
However I cannot see when other apps are launched. I am waiting for strings like the one below but they do not appear.
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}
P.S. This code is run in service.