在Android的系统开发中,解决问题的主要手段分析的Log
1.Android Log系统的架构
Android Log 系统的架构如图 1.1所示.
Log 系统的输出分为5级,分别是VERBOSE,DEBUG,INFO,WARN,和ERROR.
(1)VERBOSE 用来打印输出价值比较低的信息.
(2)DEBUG 用来打印输出调试信息,这种信息在软件发行后作用不大,因此,在发行版本中不会输出.
(3)INFO 用来打印输出软件运行时一般性的提示信息,例如,软件运行状态等,
(4)WARN 用来输出警告信息,提醒软件遇到一些可疑的或未预料的情况,需要引起注意.
(5)ERROR 用来输出软件运行时发生的错误,例如,抛出一个异常,对于错误log一定要认真的分析,查明原因.
log的分级不是强制的,但是,正确使用能让调试更加的方便.Android的log输出量是非常巨大的,短时间就可能输出几兆字节,如果一点点检查效率无疑十分底下,通过log分级可以让我们只关注某中类型的log,列如错误log.
Android log输出量巨大,特别是通信系统的log很多,因此,Android 把log输出到了不同的缓存区,目前定义了4个log缓冲区:
(1)radio : 输出通信系统的log.
(2)system : 输出系统组件的log
(3)enent: 输出event 模块log
(4)main : 所有java层log ,以及不属于上面三层的log
缓冲区的定义是给系统组件使用,一般应用不用关心,应用log都输出到main缓冲区.