解决Android Studio 3.1 版本Logger无法显示tag导致的错位

已经升级到Android Studio 3.1的同学可能会发现一个问题, Logcat中如果短时间出现多条日志tag相同, 只会显示第一条日志的tag, 后面的tag会自动隐藏, 这时com.orhanobut.logger.Logger原有的格式被破坏, 如下:

已经有人向Google提了issues, 3.2会解决这个问题.

目前我们可以使用一个取巧的版本来解决燃眉之急, 每次打印日志都改变tag内容, 会避免as自动合并tag

class DynamicTagStrategy : LogStrategy {
    private val prefix = arrayOf(
            ". ",
            " .")

    private var index = 0

    override fun log(priority: Int, tag: String?, message: String) {
        index = index xor 1
        Log.println(priority, prefix[index] + tag, message)
    }
}

val formatStrategy = PrettyFormatStrategy.newBuilder()
                .showThreadInfo(true)
                .logStrategy(DynamicTagStrategy())
                .tag("zhen")
                .build()
Logger.addLogAdapter(AndroidLogAdapter(formatStrategy))
复制代码

使用后效果如下

转载于:https://juejin.im/post/5b28b22ff265da597e359f27

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值