Android日志实战——车机日志获取(十五)

        需求:收集系统 Log,并可以实现一键导出。

一、需求分析

        针对 Log 导出功能需求进行分析:

1)ANR、Tombstones、Dropbox 等 Log 从前面的文章可以看出,都有固定存放路径,所以我们只需要在导出时到指定路径获取即可。

2)bugreport log 在之前的文章中介绍过,这里也不再多说。

3)qnx log 在 QNX 侧使用 slog2info 进行 Log 收集,存放到指定目录,然后再将该目录共享。Android 只需要到共享目录中去获取 Log 文件即可。

4)logcat log 才是我们开发的重点,主要步骤分解:

  • 开始/停止收集 Log
  • 监听 Log 文件数量和大小,达到预定值进行打包成为历史 Log
  • 监听历史 Log 文件数量和大小,达到预定值进行旧数据清理

二、收集Logcat

        由于 Log 文件存放在 data/vendor/ 下,Google 在android M 版本后,SELinux 强制性限制了普通进程访问 data 目录的权限。严禁除 init system_server installd system_app 之外的其他进程直接操作 /data 目录。并且没法直接添加访问 system_data_file 的权限,N版本上更加严格,system_app 也会被拦截下来。所以,这里我们需要将收

Guess you like

Origin blog.csdn.net/c19344881x/article/details/131764342