【发布时间】:2022-02-03 13:14:36
【问题描述】:
我的问题可能并不那么难。我只想使用 Kotlin 在 android studio 中保存 logcat 的日志。基本上,只要应用程序关闭,我只需要将 logcat 中的所有文本以可读的方式保存为文本文件。 它需要与 28 和最高版本 31 的 API 版本一起使用。 非常感谢您。
【问题讨论】:
我的问题可能并不那么难。我只想使用 Kotlin 在 android studio 中保存 logcat 的日志。基本上,只要应用程序关闭,我只需要将 logcat 中的所有文本以可读的方式保存为文本文件。 它需要与 28 和最高版本 31 的 API 版本一起使用。 非常感谢您。
【问题讨论】:
I don't think you're supposed to
READ_LOGS在 API 级别 1 中添加
public static final String READ_LOGS允许应用程序读取低级系统日志文件。
不供第三方应用程序使用,因为日志条目可能包含用户的私人信息。
有一些解决方案 here 使用 Runtime#exec 来运行 logcat 命令 - 但老实说,如果您只想保存自己的应用程序日志,您可能最好使用像 Timber 这样的库并创建一个Tree,它还写出每一行以及调用Log。
(您可以创建自己的包装函数,但这需要您记住调用它们 - Timber 为您做了很多工作,这很方便!)
这不会捕获您的应用生成的其他记录内容,例如库日志和系统信息。
【讨论】:
Tree 只是调用其他一些日志记录库,您只需要编写每条消息到你打开的文件