在Android 4.1上阅读系统日志

4

现在,我想在Android 4.1上读取系统日志。但只能获取应用程序本身的日志。我的代码如下:

Process logcatProc = Runtime.getRuntime().exec(new String[] { "logcat","ActivityManager:V","*:S" });
reader = new BufferedReader(new InputStreamReader(logcatProc.getInputStream()));  
String line;
while ((line = reader.readLine()) != null) {
    Log.e("log",line);
} 

看起来 IT 可以在 Android 4.0 或之前的版本上运行。有人试过吗?还是我需要 root 权限?

1个回答

5

在4.1版本中,系统日志发生了改变,现在只有系统应用程序才能访问。(来源:Google I/O 视频)。当然,在Root设备上安装的应用程序被设置为系统应用程序时,这是一个例外。

除此之外,在Android 4.1+上没有办法访问系统日志。注意:最终用户可以使用电源键+音量加键+音量减键的(非常棘手的)快捷方式来访问系统日志。


Maverick Bravo,我不是Andriod开发人员,只是偶然间碰到了这个。谁知道呢.. :| - OCB
@ChinBoon 没错!如果我一周前不需要查找系统日志,我就不会知道这个。 - Cat
谢谢,@Eric。同样的祝福送给你。我们需要分析我们应用程序中的系统日志,然后找到这个问题。 - Kris.lee
@Kris.lee,恐怕在这方面你没有那么幸运了。非系统应用无法读取系统日志。 - Cat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接