Android 开发中 LogCat 工具的使用

    技术2022-07-01  66

    Android 开发中 LogCat 工具的使用

     

    LogCat Android 中一个命令行工具,可以用于得到程序的 log 信息,本附录讲解其使用方法和其中的一些技巧。

     

    1. 使用方法

    LogCat 使用方法如下所示:

    LogCat [options] [filterspecs]

    LogCat 的选项包括 :

       -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 tag ( 或者使用 * 表示所有 ) priority 如下所示 :

       V    Verbose

       D    Debug

       I    Info

       W   Warn

       E    Error

       F    Fatal

       S    Silent

     

     

    事实上 LogCat 的功能是由 Android 的类 android.util.Log 决定的,在程序中 log 的使用方法如下所示:

    Log.v() -------------------- VERBOSE

    Log.d() -------------------- DEBUG

    Log.i() -------------------- INFO

    Log.w() -------------------- WARN

    Log.e() -------------------- ERROR

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

     

    对于 Java 类,可以声明一个字符串常量 TAG LogCat 可以根据 来区分不同的 log 例如 在计算器( Calculator )的类中,定义如下所示:

     

    public class Calculator extends Activity {

    /* ...... */

         private static final String LOG_TAG = "Calculator";

         private static final boolean DEBUG  = false;

         private static final boolean LOG_ENABLED = DEBUG ? Config.LOGD : Config.LOGV;

    /* ...... */

       由此,所有在 Calculator 中使用的 log ,均以 Calculator 为开头。

     

    利用 LogCat 查看日志信息

     


    最新回复(0)