03_android日志猫的使用

在java基础的时候如果想调试程序打一下日志,用的是System.out.println();.

控制台输出的其实不是咱们的日志,而是我把整个项目的部署到设备上。控制台输出的是这个东西。Uploading上传,Installing安装。

[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] ------------------------------
[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] Android Launch!
[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] adb is running normally.
[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] Performing com.itheima.logcat.MainActivity activity launch
[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] Automatic Target Mode: launching new emulator with compatible AVD 'android95device'
[2017-06-13 14:14:47 - Day03_02_android输出日志logcat] Launching a new emulator with Virtual Device 'android95device'
[2017-06-13 14:14:50 - Emulator] emulator: ERROR: Could not load OpenGLES emulation library: Could not load DLL!
[2017-06-13 14:14:50 - Emulator] emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
[2017-06-13 14:14:50 - Emulator] emulator: Failed to open the HAX device!
[2017-06-13 14:14:50 - Emulator] HAX is not working and emulator runs in emulation mode
[2017-06-13 14:14:50 - Emulator] 
[2017-06-13 14:14:50 - Emulator] emulator: Open HAX device failed
[2017-06-13 14:14:50 - Emulator] 
[2017-06-13 14:14:51 - Emulator] emulator: warning: opening audio input failed
[2017-06-13 14:14:51 - Emulator] 
[2017-06-13 14:14:51 - Day03_02_android输出日志logcat] New emulator found: emulator-5554
[2017-06-13 14:14:51 - Day03_02_android输出日志logcat] Waiting for HOME ('android.process.acore') to be launched...
[2017-06-13 14:15:30 - Day03_02_android输出日志logcat] HOME is up on device 'emulator-5554'
[2017-06-13 14:15:30 - Day03_02_android输出日志logcat] Uploading Day03_02_android输出日志logcat.apk onto device 'emulator-5554'
[2017-06-13 14:15:30 - Day03_02_android输出日志logcat] Installing Day03_02_android输出日志logcat.apk...
[2017-06-13 14:15:43 - Day03_02_android输出日志logcat] Success!
[2017-06-13 14:15:43 - Day03_02_android输出日志logcat] Starting activity com.itheima.logcat.MainActivity on device emulator-5554
[2017-06-13 14:15:45 - Day03_02_android输出日志logcat] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.itheima.logcat/.MainActivity }

安卓中真正输出日志的是logcat日志猫。


Tag 通过标签来进行过滤。by Log Message根据日志的内容进行过滤。PID是我当前进程的编号。我也可以通过这个编号来进行过滤。by Application Name通过应用的名字来进行过滤。这里就可以写一个固定的过滤器。

如果用System.out来输出的日志,它的Tag日志都是System.out。这个东西的弊端是如果好多个人一起开发,或者说你写了好多个日志在不同的类里面,那么我在调试的过程中我现在新建了另外一个类我再想看一看这个东西。结果一运行起来发现我打了一堆System.out。究竟我现在打的日志是哪一条不太好区分,因为咱们比较常见的区分/过滤的手段是通过Tag标签。但是Tag标签就是System.out改不了。

五个日志的级别:verbose、debug、info、warn、error。assert不属于日志的级别。Tag写死了固定了就是System.out.你通过System.out来打的这个日志的级别也是固定的.所以说相对来讲你用它来输出的日志在过滤起来的时候就相对来讲会麻烦一些。

现在咱们这个虚拟机含的日志还是比较少。如果你真的把你的手机/设备连在这个IDE上,你就会发现LogCat控制台上在使劲在跑,一直都不停。一直都不停那你在调试的时候想看到你的log一定要通过过滤器。通过这个过滤器去过滤的,否则的话你的log会被其他的日志给顶上去了。所以咱们一定要搞这个tag,通过它来过滤。过滤之后这个日志就不会这么来回跑了。所以可以通过当前的类名来作为一个tag。

posted on 2017-06-13 07:50  绿茵好莱坞  阅读(224)  评论(0编辑  收藏  举报

导航