如何使用 Logcat 打印非常大的字符串

How to print very large string using Logcat

我正在使用这种方法打印一个大字符串:

   private static final int LOGCAT_MAX_LENGTH = 3950;

    private void logLongJsonStringIfDebuggable(String s) {
        if (BuildConfig.DEBUG) {
            while (s.length() > LOGCAT_MAX_LENGTH) {
                int substringIndex = s.lastIndexOf(",", LOGCAT_MAX_LENGTH);
                if (substringIndex == -1)
                    substringIndex = LOGCAT_MAX_LENGTH;
                Log.d("TAG", s.substring(0, substringIndex));
                s = s.substring(substringIndex).trim();
            }
            Log.d("TAG", s);
        }
    }

这很好用,但是 Logcat 打印的字符串太多,我无法在 Logcat 中看到字符串的所有内容。我只能看到最近的。 你能告诉我如何查看 Logcat 中的所有 Logcat 日志吗?或者你能告诉我一种将所有日志打印到文件或类似文件的方法吗?谢谢

将您的日志写在文件上,这样您的日志重置问题就不会出现,您可以看到完整的日志。

在终端上使用以下命令

adb logcat > path_of_file/LogFile.log // Extension can be .txt also