程序员人生 网站导航

【十三】注入框架RoboGuice使用:(Logging via Ln)

栏目:互联网时间:2014-11-21 08:49:31

          上1篇我们简单的介绍了1下RoboGuice的使用(【102】注入框架RoboGuice使用:(Your First Injected ContentProvider)),今天我们来看下Log日志使用。

          Android利用通过会使用内置的android.util.log在Android控制台上面打印日志信息。RoboGuice也提供了另外的日志管理,你可能会想要使用。

       (1):  RoboGuice日志管理和通常的Log差不多,但也一样具有以下优点:

         ①:对发布包来讲,Debug and verbose日志会自动不显示。

          ②: 利用程序名字,文件,日志行信息,时间戳,线程和其他有用信息都会自动记录(为了提高性能其中1些信息可以禁用显示)。  ③:由于使用了可变参数,禁用日志显示提高性能,如果你常常使用debug or verbose logging,这个可以提高性能。

          ④:你可以在要使用日志的地方进行覆盖写入格式化的日志消息

      (2): 1些简单的例子

Ln.v("hello there"); Ln.d("%s %s", "hello", "there"); // varargs Ln.e( exception, "Error during some operation"); // Throwables go at the FRONT! Ln.w( exception, "Error during %s operation", "some other"); Ln.v("hello there, ", "Mr. Invisible"); // ERROR, Mr. Invisible will never display
      (3):常见的陷进毛病

        Ln和Log的语法略有基础不同,要注意以下几点:

         ①:在调用的时候确保首先加入exception信息,1个常见的毛病是在最落后行android.util.Log转换, 后边放入varargs parameter。

         ②:可变长度参数不会添加到日志消息中,你比把%s或其他类似格式参数插入到日志消息中,如果你忘记该参数将会是失效毛病。

      (4):改变日志习惯

         有些APP可能需要斟酌把日志保存到默许位置而不是直接在Android 控制台上面打印。例如:你可能需要把日志保存下来用于异常毛病分析。

         为此你只需要实现Ln.Print的子类,肯定绑定到子模块。需要注意的是Ln不会进行日志回滚的操作,所以当进行写文件的时候要主要装备的存储空间满的情况。你也能够重写Print方法来输出有格式的日志。要记住重写Print方式1个全局的改变,任务依赖Ln日志的代码都会使用这个Print方法。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐