如何增加android日志类的控制台输出

对于默认loginAndroid平台上的控制台输出字符数量有限。 大约等于3000多位。因此,如果消息长度超过3000个字符,则不显示在屏幕上。

我还没有find比这更好的解决scheme:

public class Log { private static int mode = android.util.Log.INFO; public static void e(String tag, String msg, Throwable tr) { if ((mode & android.util.Log.ERROR) <= 0) return; android.util.Log.e(tag, msg, tr); } public static void e(String tag, String msg) { if ((mode & android.util.Log.ERROR) <= 0) return; android.util.Log.e(tag, msg); } public static void w(String tag, String msg) { if ((mode & android.util.Log.WARN) <= 0) return; android.util.Log.w(tag, msg); } public static void i(String tag, String msg) { if ((mode & android.util.Log.INFO) <= 0) return; android.util.Log.i(tag, msg); } public static void d(String tag, String msg) { if ((mode & android.util.Log.DEBUG) <= 0) return; int length = msg.length(); int kind = 3000; if (length >= kind) { int count = length / kind; int u = length % kind; int i = 0; for (i = 0; i < count; ++i) { int start = i * kind; int end = start + kind; android.util.Log.d(tag, msg.substring(start, end)); } if (u != 0) { int start = length - u; int end = start + u; android.util.Log.d(tag, msg.substring(start, end)); } } else { android.util.Log.d(tag, msg); } } } 

有没有更好的解决这个问题?

Solutions Collecting From Web of "如何增加android日志类的控制台输出"

当做大输出(JSON等)时,1024字符限制的解决方法是做一个简单的for循环,以大块的formslogging它们。

它可能不像你的那样精心制作,但是在眼睛上很容易,不会把代码弄得太多。

  String json = data.toString(); int length = json.length(); for(int i=0; i<length; i+=1024) { if(i+1024<length) Log.d("JSON OUTPUT", json.substring(i, i+1024)); else Log.d("JSON OUTPUT", json.substring(i, length)); }