¿Alguien tiene alguna sugerencia sobre cómo puedo ver el texto completo de los errores que ocurren al intentar sincronizar mis carpetas K9?
Parece que no hay forma de ver estos mensajes de registro en el dispositivo sin acceso de root , pero si tiene acceso de root, hay un par de opciones, ya sea otorgar los permisos requeridos a aLogcat o considerar usar un horrible hack TM para ver ellos directamente.
Ver los archivos de registro en su PC o estación de trabajo a través de adb
Si puede conectar su dispositivo Android a una PC o estación de trabajo, puede acceder a los registros mediante el adb
comando.
Para hacer esto en Windows, primero deberá instalar el SDK de Android (que requerirá el SDK de Java SE ) y agregar el android-sdk\tools
y android-sdk\platform-tools
a la ruta del sistema . Luego habilite la depuración de USB en su Nexus 7, conéctelo a través de USB e instale la interfaz ADB compuesta de Android desde android-sdk\extras\google\usb_driver
(tuve que obligar a Windows XP a mirar aquí, no encontraría los controladores por sí mismo).
Para obtener detalles sobre cómo comenzar adb
a funcionar sin la instalación completa del SDK de Android, o en máquinas Mac o Linux, consulte la excelente respuesta de Izzy a
¿Hay una instalación mínima de ADB?
Luego puede abrir un shell (es decir, una cmd
ventana) y ejecutar el comando:
adb logcat k9:V *:S AndroidRuntime:E
- He confirmado que esto funciona en mi Nexus 7 no rooteado.
Conceder permisos a aLogcat
Si tiene acceso de root , podría considerar otorgar el READ_LOGS
permiso a aLogcat , como se sugiere en esta publicación aLogcat / CatLog / Lumberjack no funciona? Haga esto ... en el foro xda-developers :
pm grant <pkg> android.permission.READ_LOGS
Para otorgar este permiso a alogcat
o alogcat.donate
, usaría uno de los siguientes comandos, dependiendo de si está ejecutando la versión de donación o no:
pm grant org.jtb.alogcat.donate android.permission.READ_LOGS
pm grant org.jtb.alogcat android.permission.READ_LOGS
Según una publicación en desarrolladores de Android y el ticket , la concesión de permiso sobrevive al reinicio y actualización, pero no a la desinstalación / reinstalación.
Lamentablemente, dado que esto requiere acceso de root, ya sea que lo ejecute en el dispositivo o en mi PC (con el prefijo adb shell
), solo aparece el error:
Neither user 12345 nor current process has android.permission.GRANT_REVOKE_PERMISSION
- No puedo confirmar que esto funcione, ya que mi Nexus 7 no ha sido rooteado.
Considera usar un truco horrible TM
Si tiene acceso de root , podría considerar hacer logcat
setuid root y ejecutar logcat desde el shell del dispositivo, como se sugiere en esta respuesta a mi ¿Cómo puedo acceder a los archivos de registro de Android en mi Nexus 7 sin acceso de root? pregunta:
chmod 04755 /system/bin/logcat
logcat k9:V *:S AndroidRuntime:E
- Nuevamente, no puedo confirmar que esto funcione y probablemente solo lo usaría como último recurso , dadas las implicaciones de seguridad.
¿Por qué no aparecen mensajes de registro de K9 en el visor de registros de aLogcat ?
¿Podría haber cambiado algo en Jelly Bean que llevó a la tala de K9 a dejar de funcionar?
Dado que aLogcat muestra muy pocos mensajes en general, ¿ha cambiado algo en Jelly Bean que podría significar que ya no puede acceder a todos los mensajes?
Esto parece ser un cambio en Jelly Bean que afecta a todas las aplicaciones que pueden intentar leer los archivos de registro.
Aparentemente, el permiso READ_LOGS no se otorga a aplicaciones de terceros en Jelly Bean . Dado que este enlace parece no ser confiable:
Hoy probé mi aplicación en el nuevo emulador (api 16) antes de lanzarlo a Google Play. Resultó que Android ahora se niega a otorgar este permiso a aplicaciones de terceros. Esto es extraño porque revisé todos los cambios documentados de Jelly Bean y no pude encontrar nada que mencione el permiso READ_LOGS.
y después
El nivel de protección para READ_LOGS ahora es "firma | sistema | desarrollo". La nueva sintaxis de canalización para ProtectionLevel también no está documentada (consulte http://code.google.com/p/android/issues/detail?id=34785 ).
Mi sospecha es que aLogcat solo está viendo mensajes generados por sí mismo y es vm.
Para obtener más información, consulte las respuestas de Flow a mi pregunta ¿Qué tan activo debería esperar que esté mi archivo de registro del sistema Jelly Bean?
adb logcat
todavía puede obtener el registro completo de Android en Jelly Bean.adb logcat
desde allí y he actualizado mi respuesta en consecuencia. Todavía es frustrante que no pueda encontrar ninguna forma de acceder a los registros sin acceso a la raíz desde el propio dispositivo.He visto este comportamiento en K9 cuando mi servidor de correo actualizó sus certificados SSL. La solución fue mantener presionada la cuenta, seleccionar
Account settings -> Fetching mail -> Incoming server
y simplemente presionarNext
las páginas para confirmar su configuración hasta que aparezca la ventana emergente sobre el certificado (esto podría no aparecer si todo está bien con el certificado, el mío tenía un vhost incorrecto). Confirme el certificado y simplemente revise el resto de la configuración y su cuenta debería comenzar a funcionar.fuente