Cómo aumentar la salida de consola en la clase de registro de Android

Por defecto Iniciar sesión en la plataforma android tiene una cantidad limitada de caracteres para la salida de la consola. Alrededor de un poco más de 3000. Por lo tanto, si el mensaje es más de 3000 caracteres, no se muestra en la pantalla.

No he encontrado una solución mejor que esta:

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); } } } 

¿Hay una mejor solución a este problema?

Una solución para el límite de caracteres de 1024 al hacer grandes salidas (JSON etc) es hacer un simple for-loop, registrando en trozos.

No puede ser tan elaborado como el suyo, pero es fácil en los ojos y no desorden el código demasiado.

  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)); } 
  • Android: validar el archivo xml en tiempo de compilación?
  • Android: habilitar barras de desplazamiento en la vista personalizada
  • ¿Puedo organizar las clases en carpetas después de hacerlas y seguirán funcionando?
  • Error de conexión de anuncios: EOF (nuevo en android)
  • Obtener la aplicación seleccionada de Intent.createChooser
  • HttpPost funciona en proyecto Java, no en Android
  • Prácticas recomendadas para la programación asíncrona
  • Implementar Google Analytics para las pantallas de juegos Android LibGDX
  • Qué significa "especificado para la propiedad 'resDir' no existe."
  • División de una cadena delimitada por periodos en varias cadenas
  • Error al compilar AIDL
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.