【问题标题】:How to get logs of other apps?如何获取其他应用的日志?
【发布时间】:2016-11-18 02:35:17
【问题描述】:

我想从其他应用程序读取日志并对其进行过滤,以便在记录某个关键字时,我的应用程序将执行某个任务。

我找到了几种读取日志的方法,但从我的测试中我只能得到我的应用程序日志。

这是我最初尝试使用的方法

try {
  Process process = Runtime.getRuntime().exec("logcat -d");
  BufferedReader bufferedReader = new BufferedReader(
  new InputStreamReader(process.getInputStream()));

  StringBuilder log=new StringBuilder();
  String line = "";
  while ((line = bufferedReader.readLine()) != null) {
    log.append(line);
  }
  TextView tv = (TextView)findViewById(R.id.textView1);
  tv.setText(log.toString());
  } 
catch (IOException e) {}

但它似乎只读取我的应用程序的日志。

【问题讨论】:

    标签: java android android-logcat android-log


    【解决方案1】:

    只有设备root后才能读取所有应用的日志。

    如果您想阅读已root设备的日志,那么this 应该可以帮助您。但是,您必须将 targetSdk 设置为 16。

    【讨论】:

    • 你有那个代码吗?这就是我要找的。​​span>
    • 我不确定您是否完全理解 root 设备的含义。请阅读this
    • 我很清楚什么是根设备。我只让我的应用程序根不是问题。我只是要求您的代码读取已root设备上的系统日志。
    • 很抱歉让您误会了。请检查编辑@Rosenpin。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 2020-08-06
    • 2017-12-24
    • 1970-01-01
    相关资源
    最近更新 更多