Android 长LOG打印不全解决办法一

百度的一些方法打印不出正确日志(String的length计算的是字符数量)。

理论:

Android单条log长度最大值为:4*1024字节,超过的话会被Log内核驱动截断.

干货:

public class LongLog {
    //因为String的length是字符数量不是字节数量所以为了防止中文字符过多,
    //  把4*1024的MAX字节打印长度改为2001字符数(假设有大约一半中文字符,基本够小了,当然改为1006才是完全保险的)
    public static String TAG="-----LongLog-----";
   public  static void  loge(String str){
       int max_str_length=2001-TAG.length();
       //大于4000时
           while (str.length()>max_str_length){
               Log.e(TAG, str.substring(0,max_str_length) );
               str=str.substring(max_str_length);
           }
       //剩余部分
       Log.e(TAG, str );
   }

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值