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。
03_android日志猫的使用的更多相关文章
- Android日志猫的使用
Android日志猫的使用 Android给我们提供了一个Log类,这个类有一些方法,比如 我们可以在我们的代码中添加这些方法进行测试 package com.example.test; import ...
- 7.Android-压力测试、单元测试、日志猫使用
1.压力测试monkey 通过cmd输入下面命令: adb shell monkey -p com.example.phonecall --ignore-crashes --ignore-timeou ...
- 3 测试使用和LogCat日志
测试概念: 1.根据是否知道源代码分: 黑盒测试:功能测试 白盒测试:编写代码进行测试 2.测试力度划分: 方法测试: 单元测试: 集成测试: 系统测试: 3.暴力程度划分: 压力测试: 冒烟测试:压 ...
- Android常见的控件
1.Log类的使用 (1)Log.v() v是verbose 提醒的意思 (2)Log.d() d是debug调试 (3)Log.i() i是info信息的意思 (4)Log.w() ...
- 安卓Android基础—第二天
测试的相关概念 好的软件不是开发出来的,是不断测试出回来的 根据是否知道源代码 黑盒测试 白盒测试 根据测试的粒度 方法测试 单元测试 集成测试 系统测试 根据测试的暴力程度 压力测试(谷歌工程师提供 ...
- android studio AndroidManifest
一.目录结构 1. AndroidManifest.xml 它是一个清单文件,提供应用的基本信息 <?xml version="1.0" encoding="utf ...
- Android如何使用OKHttp
首先要在build.gradle里面写入 // 添加OKHttp支持 implementation("com.squareup.okhttp3:okhttp:4.3.1") 下面是 ...
- 猫哥网络编程系列:详解 BAT 面试题
从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...
- MapReduce实现手机上网日志分析(分区)
一.问题背景 实际业务的需要,比如以移动为例,河南的用户去了北京上网,那么他的上网信息默认保存在了北京的基站,那么我们想要查询北京地区的上网日志信息默认也包含了其他地区用户的在本区的上网信息,否则只能 ...
随机推荐
- Mysql的空值与NULL的区别
Mysql数据库是一个基于结构化数据的开源数据库.SQL语句是MySQL数据库中核心语言.不过在MySQL数据库中执行SQL语句,需要小心两个陷阱. 陷阱一:空值不一定为空 空值是一个比较特殊的字段. ...
- python编写脚本应用实例
这里主要记录工作中应用python编写脚本的实例.由于shell脚本操作数据库(增.删.改.查)并不是十分直观方便,故这里采用python监控mysql状态,然后将状态保存到数据库中,供前台页面进行调 ...
- python 3 封装
python 3 封装 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小鱼,小虾,小王八,一起装进麻袋,然后把麻袋封上口子.照这种逻辑看,封装=‘隐藏’,这种理解是相当片面的. 先看如何隐藏 在 ...
- sublime text的pylinter插件设置pylint_rc后提示错误
sublime text插件pylinter提示错误 Warning: option include-ids is deprecated and ignored. 错误本身是Python的错误,这说明 ...
- Shell中的 >/dev/null 2>&1
默认情况下,总是有三个文件处于打开状态,标准输入(键盘输入).标准输出(输出到屏幕).标准错误(也是输出到屏幕),它们分别对应的文件描述符是0,1,2 .那么我们来看看下面的几种重定向方法的区别: 1 ...
- C++(九)— 虚函数、纯虚函数、虚析构函数
1.虚函数 原因:通过指针调用成员函数时,只能访问到基类的同名成员函数.在同名覆盖现象中,通过某个类的对象(指针及引用)调用同名函数,编译器会将该调用静态联编到该类的同名函数,也就是说,通过基类对象指 ...
- beans.factory.BeanCreationException beans.factory.annotation.Autowired(required=true)
主要是这三个方面排查: 1,注入写成这样 @Autowired private BrandServiceImpl brandServiceImpl; 2,jar冲突,在pom.xml中 ...
- AMD模块定义规范
AMD 即Asynchronous Module Definition,中文名是“异步模块定义”的意思.它是一个在浏览器端模块化开发的规范,服务器端的规范是CommonJS. 模块将被异步加载,模 ...
- Jenkins部署及邮箱配置
第一步:下载jenkins安装包,下载地址是https://jenkins.io/download/,下载通用的war文件即可,这个格式文件不论哪个操作系统都可运行: 第二步:jdk安装,最新的jen ...
- BEC listen and translation exercise 38
很高兴看到有这么多人想了解我们的体育设施.It's good to see that there are so many people wanting to find out about our sp ...