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

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

理论:

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

干货:

public class LongLog {
    //因为String的length是字符数量不是字节数量所以为了防止中文字符过多,
    //  把4*1024的MAX字节打印长度改为2001字符数
    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 );
   }

 

 

 

 

 

 

你可能感兴趣的:(Android 长LOG打印不全解决办法一)