首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android kotlin日志库

Android kotlin日志库
EN

Stack Overflow用户
提问于 2021-01-07 15:50:09
回答 1查看 829关注 0票数 0

我需要一个用于android的日志库,它将:

  • 将日志写入/storage/emulated/0/Android/data/com.example.myproject/files/logs/的某个文件
  • 日志文件应该以某种方式命名为2021-01-01.17-39-29.txt
  • 我希望能够指定logs目录可以有多少文件。例如,如果我将最大文件设置为20,它将自动删除旧的日志文件。
  • 我希望控制日志记录过程,以便库只在调用方法时才会写入文件,例如:logfile.log(data)

现在,我知道很多关于android登录堆栈溢出的问题,但是我想找到一个能满足我所有需求的库。如果你知道一个好的,我会非常感谢你的帮助。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-01-07 17:09:42

首先,我建议使用木料来管理日志记录(此库支持为调试和生产目的进行日志记录)。

然后,您需要编写一个函数来将日志写入磁盘。

例如:

代码语言:javascript
复制
if (BuildConfig.DEBUG) {
    // Default debug tree 
    // A Tree for debug builds. Automatically infers the tag from the calling class. 
    Timber.plant(Timber.DebugTree())
} else {
    // Implement your custom Tree if need, eg. enable crashlytics,...
}

现在,您可以通过重写DebugTree类将日志写入磁盘:

代码语言:javascript
复制
Timber.plant(object: Timber.DebugTree() {

        // for example, if you need to write log when catched exceptions
        override fun e(t: Throwable?) {
            super.e(t)
        }

        // or here to check for all tags
        override fun createStackElementTag(element: StackTraceElement): String? {
            return super.createStackElementTag(element)
        }
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65615591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档