• Android调试日志


    Android应用程序开发,调试时需要辅助日志文件中的输出信息。

    一、Android应用程序调试

           默认Android应用程序不能调试,(eclipse)会提示如下信息:“Application “xxx” does not have the attribute 'debuggable' set to TRUE in its manifest and cannot be debugged”

          需要修改Manifest文件中的debuggable属性,使其值为true,这时才可以调试。

    二、日志信息

    1、输出日志信息

    Android提供一个静态Log类,提供五个静态方法Log.v()(详细),Log.d()(debug),Log.i()(information),Log.w()(warning) ,Log.e()(error),用来将消息写入模拟器上的日志文件中。如果在DDMS上运行logcat可以就实时查看消息

    (1)日志信息级别

    •          Log.v() -------------------- VERBOSE
    •          Log.d() -------------------- DEBUG
    •          Log.i() -------------------- INFO
    •          Log.w() -------------------- WARN
    •          Log.e() -------------------- ERROR

    以上log的级别依次升高,DEBUG信息应当只存在于开发中,INFO, WARN,ERROR这三种log将出现在发布版本中。

    (2)输出日志信息

    在应用程序中添加 import android.util.Log;

    使用该类的静态方法,

        1.         Log.d(String tag, String msg); 
      1.         Log.i(String tag, String msg); 
      2.         Log.w(String tag, String msg); 
      3.         Log.e(String tag, String msg); 
    • 其中: tag是一个标识,可以是任意字符串(一般将tag设置成一个静态常量或使用类名+方法名)用来在查看日志时提供一个筛选条件,以方便的追踪信息的输出。
    •           Msg 是log信息的内容。

    在应用程序中使用 System.out.println();语句将信息输出到日志文件(而不是将信息输出到控制台)。

    2、eclipse中查看日志

    设置步骤如下:

    (1)windows ==> Preferences ==> Android ==> DDMS  ==> Logging Level

    (设置日志级别,选中之下的将被显示,选中之上的不被显示。)

    clip_image001

    (2)windows ==> Show View ==> Android ==> LogCat

    clip_image002

    (3)显示LogCat栏目。

    clip_image003

    3、使用logcat命令行工具查看日志

         logcat是Android中的一个命令行工具,可以用其得到程序的log信息。

    logcat使用方法如下: 

              logcat [options] [filterspecs]

    options包括:

    •   -s                    设置过滤器,例如指定 '*:s'
    •   -f <filename>   输出到文件,默认情况是标准输出。
    •   -r [<kbytes>]   Rotate log every kbytes. (16 if unspecified). Requires -f
    •   -n <count>      Sets max number of rotated logs to <count>, default 4
    •   -v <format>     设置log的打印格式,  <format> 是下面的一种:brief process tag thread raw time threadtime long
    •   -c                     清除所有log并退出
    •   -d                    得到所有log并退出 (不阻塞)
    •   -g                    得到环形缓冲区的大小并退出
    •   -b <buffer>     请求不同的环形缓冲区    ('main' (默认), 'radio', 'events')
    •   -B                    输出log到二进制中。
    • 过滤器的格式:<tag>[:priority],其中<tag>表示log的component,

    priority 如下:

    •   V    Verbose---------------------------------------Log.v()
    •   D    Debug-----------------------------------------Log.d()
    •   I     Info---------------------------------------------Log.i()
    •   W   Warn-----------------------------------------Log.w()
    •   E    Error------------------------------------------Log.e()
    •   F    Fatal
    •   S    Silent
  • 相关阅读:
    2016.7.17
    2016.7.16
    2016.7.15
    2016.7.12
    2016.7.11
    2016.7.10
    coco2d-x中的坐标系问题
    cocos2d-x中的Tiled地图
    cocos2d-x中的Box2D物理引擎
    python文件处理及装饰器
  • 原文地址:https://www.cnblogs.com/dyufei/p/2573915.html
Copyright © 2020-2023  润新知