本人菜鸟一枚,极大发挥了搜索的功能。现记录一番,以备后患。

用断点真的很烦,因为之前写linux的时候,就是用最蠢但是也是挺有帮助的printf()来进行调试。

其实用Log输出日志的原理也是差不多的,都是打印想输出的东西,看看编译器执行到哪个位置了。

为什么要用Log呢?

--Android Studio不能用print或者println来输出,本人亲自测试了(网上说println可以,但是我的还是不行,只能尝试Log方法了,然后一下子就调试成功了)

基本知识

1、Log需要导入的包为:import android.util.Log

2、Log.v 的调试颜色为黑色的,任何消息都会输出,这里的v代表verbose(冗长,啰嗦),平时使用就是Log.v("随便一个字符串用作标签","随便一个字符串用作输出的东西")。

3、Log.d的输出颜色是蓝色的,仅输出debug调试的意思,它会输出上层的信息,过滤起来可以通过DDMS的Logcat标签来选择,这个用得就比较多了。

4、Log.i的输出为绿色,一般提示性的消息information,它不会输出Log.v和Log.d的信息,但会显示i、w和e的信息。

5、Log.w的意思为橙色,可以看作为warning警告,一般需要我们注意优化Android代码,同时选择它后还会输出Log.e的信息。

6、Log.e为红色,可以想到error错误,这里仅显示红色的错误信息,这些错误就需要我们认真的分析,查看栈的信息了。

用法简单介绍

1.如下,一个简单函数(用kotlin写的一个函数)

 fun showDialog(view: View) {
Log.d("TAG","***********1")//这里是日志测试1
myDialog= MyDialog(this, R.layout.create_user_dialog, onClickListener)
Log.d("TAG","***********4")//这里是日志测试4
myDialog?.show()
} val onClickListener = object : View.OnClickListener { override fun onClick(v: View?) { Log.d("TAG","***********2")//这里是日志测试2
when (v?.getId()) { R.id.btn_save -> { val name = myDialog?.text_name?.getText().toString().trim()
val mobile = myDialog?.text_mobile?.getText().toString().trim()
val info = myDialog?.text_info?.getText().toString().trim() println(name + "——" + mobile + "——" + info)
}
}
Log.d("TAG","***********3")//这里日志测试3
}

  

2.点击左下角的Android Monitor,然后看到有一个logcat,就是主要观察点了

可以查看到Log输出信息:********1等信息,通过这些信息可以判断函数怎么执行的。

3.还可以把logcat窗口拖出来,方便查看。

Android Studio的Log日志调试的更多相关文章

  1. LogBoy 之Android Studio控制台输出日志太多清空

    在使用Android studio的时候,有时候会由于手机输出的日志太多,导致控制台瞬间清空,尤其是遇见一些FATAL Exception时候,瞬间控制台就被清空了,根本捕获不到,导致其他调试的日志也 ...

  2. .Net程序员之不学Java做安卓开发:Android Studio中的即时调试窗口

    对学.Net的人来说,JAVA开发是一场噩梦. .net中的即时窗口,调试时直接在里面写代码,对程序中的各种方法/属性进行调用,很方便. Android Studio中找了好久,参考如下网址,也有类似 ...

  3. Android Studio 连接真机调试

    以小米4为例,先将手机通过USB连接电脑,在设备管理器中确保驱动安装正确. 对手机的设置 1.设置手机为开发者模式(设置->关于手机->连续点击MIUI版本--开启成功) 2.在更多设置中 ...

  4. Mac电脑使用Android Studio进行真机调试

    第一步: 为mac电脑配置 adb 命令的环境变量,分为2小步 1.找到 Android Studio 为你安装的 SDK : 打开电脑中 Android studio 的工具的软件,在启动 Andr ...

  5. Android Studio连接真机调试

    1.安装配置Android studio2.2 2.下载手机驱动或者安装手机助手(360手机助手) 3.用手机助手连接用于调试的手机 注意手机要开启开发者模式->允许USB调试 4.查看手机连接 ...

  6. 关于 Android Studio 如何连接手机调试

    第一步:设置-> 打开开发者选项,以及USB调试模式 第二步:关于手机->版本号,点击版本号会弹出提示:已经处于开发者模式,无需操作 第三步:设置->在搜索框中输入HDB,此时会弹出 ...

  7. cordova开发插件,并在android studio中开发、调试

    之前用过cordova Lib包装H5页面,自己写插件,但做法是野路子,不符合cordova插件的开发思路,这次项目又需要包装H5页面,同时需要自定义插件.所以又折腾了一次cordova自定义插件. ...

  8. Android studio关于真机调试DDMS中的data文件夹打不开的解决方法

    由于做开发的时候想打开查看数据库存放的内容,在eclipse中数据库文件默认就在/data/data/应用包名/databases/数据库名,而用Android studio打开DDMS下面找时发现点 ...

  9. android studio上代码编译调试中遇到的一些异常记录

    下面是记录的在平时代码编写或编译时的一些异常,答案有自己摸索出来的,也有参考其他程序猿朋友的,参考文章过多,就不一一贴出来了. ① E/JavaBinder: !!! FAILED BINDER TR ...

随机推荐

  1. 第四章 T-SQL编程

    1.前言->此T-SQL编程是基于sql server开发环境->关键字:T-SQL编程:游标:视图和索引 2.T-SQL编程基础->标识符:常规标识符必须以汉字.字母.下划线_.@ ...

  2. PHP使用MySQL报no such file or directory

    原因是没有连接数据库.加上下面代码: $link = mysql_connect(DB_HOST,DB_USER,DB_PWD);mysql_select_db(DB_NAME) or die('Co ...

  3. java的sleep方法详解

    java的sleep方法详解: sleep并不是永久占有CPU,没有那个线程能永久占用CPU.它是指在自己时间片内睡眠,而不是急着交出CPU.yield()就是自己愿意立即交出时间片.因此一个线程sl ...

  4. Task 的入门

    https://www.cnblogs.com/huangxincheng/archive/2012/04/03/2430638.html

  5. mac home brew install go

    mac利器home brew安装Go 首先你得需要安装home brew和ruby环境(因为home brew依赖ruby) 如果没有请自行到链接安装 准备好之后就开始安装go了 brew updat ...

  6. 统计函数运行时间-CPU端

    C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t.在MSDN中,查得对clock函数定义如下:  clock_t clock( void ); 这个函数返回从“开启这个程序 ...

  7. HttpContext.RewritePath

    定义:使用给定路径重写 URL.就是可以跳转到指定的URL. 也可以做为伪静态的跳转.具体如下. 他的重载 ①新建一个页面,放两个链接到另一个页面,注意给的链接 ②在 global.asax 文件中 ...

  8. 项目部署到自己的IIS上

    一般我们只能在本机上才可以开到我们的项目,这个是不需要连网的 如果想让我们的项目在网站中打开,别人也可以看到,就需要把我们的项目部署到服务器上了,输入IP就可以看到我们的项目 发布项目 然后发布网站 ...

  9. django Ajax介绍

    1.Ajax技术 认识ajax之前必须先了解json模块,json(Javascript  Obiect  Notation,JS对象标记)属于一种轻量级的数据交换格式 json的格式来源于js的格式 ...

  10. SqlServer 连接GreenPlum问题处理

    一.SQL SERVER.GREENPLUM 1. SSIS安装 ▶ 安装SQL SERVER 2005 数据库之后,运行SSIS工具,建立包,建立完成之后,新建工作流,双击工作流之后无法进行编辑,并 ...