Android Studio中debug功能详解

本文为大家分享了Android Studio debug功能的具体使用方法,供大家参考,具体内容如下

运行debug模式

img

\1. 进入debug

– 点击图中红色圆圈圈起的左边绿色按钮,运行app的debug模式,快捷键Shift+F9

– 点击图中红色圆圈圈起的右边按钮,可以选择正在运行的进程attach debugger

\1. 打断点:鼠标点击编辑框左侧,出现红色圆点

断点分类

img

这张图可以看出断点也有行断点、方法断点、字段断点、异常断点。其实打断点仔细观察也可以发现它们的标识图片是不同的,就是上图中每行前面的那四种不同的小红点。

行断点: 当执行到此行是停止执行,等待调试。

**属性断点:**打在类的成员变量上,当变量初始化或变量的值改变时触发断点。当然也可以配合其他用法设置过滤。

img

**方法断点:**打在一个函数的首行,进行函数级别的调试,更可以打在JDK的源码里,查看函数调用。普通的断点是不能打在源码里的。

img

**异常断点:**当抛出指定异常时触发断点。AS可以在Breakpoints中点击左上角 + 号,选择Java Exception Breakpoints,来指定一个异常。

img

基本操作

img

从左到右依次

  1. 跳到当前执行的断点处
  2. Step Over 单步执行
  3. Step Into 进入正在执行的方法(必须是自定义的方法)、
  4. Focus Step Into 可以进入源码
  5. Step Out 跳出正在执行的方法
  6. Drop Frame 返回到当前方法的调用处
  7. Run to Cursor 运行到光标处
  8. Evaluate expression 计算选中的变量的值

img

从上到下依次为:

  1. 切换debugger模式
  2. 运行至下一断点,(从暂停)恢复程序
  3. 暂停程序
  4. 关闭调试
  5. 查看断点
  6. 隐藏断点
  7. 查看线程堆栈

高级操作和断点过滤

点击上一张图中的5查看断点可以打开下面的面板,这张面板提供了关于debug的许多高级功能:

img

条件过滤

img

右击断点,可以设置condition。如图所示,设置一个变量mJoinVaule.equals(“222”),点击Done。当在mJoinEt这个EditText中输入222时才会触发这个断点。

在BreakPoints面板同样可以设置条件断点。

测试代码

下面是一段测试代码,用来测试后面的功能

package com.jnxy.arithmetic.base;

/**
 * Created by admin on 2016/8/5.
 */
public class Person {

  int age;

  public void out() {
    System.out.println("age : " + age);
  }
  public Person(int age) {
    this.age = age;
  }


  public static void main(String [] args) {
    Person p1 = new Person(3);
    Person p2 = new Person(5);
    Person p3 = new Person(8);
    Man man = new Man(10, 10);
    Woman woman = new Woman(12, 12);

    Person[] persons = new Person[]{p1, p2, p3, man, woman};
    for (Person person : persons) {
      person.out();
    }
  }
}
class Man extends Person {

  int weight;

  public Man(int age, int weight) {
    super(age);
    this.weight = weight;
  }
}
class Woman extends Person{

  int height;

  public Woman(int age, int height) {
    super(age);
    this.height = height;
  }
}

复制

日志断点

img

断点打在上方代码第27行,选中代码,同时设置Condition和Log evaluation expression,这样只有person.age8时断点生效,才会在log打印表达式。当然,也可以值设置Log表达式。控制器输出如下图,可以看到只有age8时才打印了toString().

img

实例过滤

img

打好断点,并设置触发断点的实例

img

继续执行程序,当设置的实例调用方法时断点生效。

img

类过滤

img

首先设置Class Filter,内容为要过滤类的完整路径,设置为只有Man类调用方法断点生效,下图age==10,证明确实是Man类调用的方法。

img

执行次数断点

img

img

Pass Count和Condition具有相似之处,但Condition用途应该更广泛一些。

设置变量值

img

调试过程中,选中一个变量右键可以可以进行Set Value操作,这项强大的功能对需要不同数据进行判断的情况提供了极大地便利。

更多Android进阶指南 可以扫码 解锁 《Android十大板块文档》

1.Android车载应用开发系统学习指南(附项目实战)

2.Android Framework学习指南,助力成为系统级开发高手

3.2023最新Android中高级面试题汇总+解析,告别零offer

4.企业级Android音视频开发学习路线+项目实战(附源码)

5.Android Jetpack从入门到精通,构建高质量UI界面

6.Flutter技术解析与实战,跨平台首要之选

7.Kotlin从入门到实战,全方面提升架构基础

8.高级Android插件化与组件化(含实战教程和源码)

9.Android 性能优化实战+360°全方面性能调优

10.Android零基础入门到精通,高手进阶之路

敲代码不易,关注一下吧。ღ( ´・ᴗ・` ) 🤔

  • 26
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android StudioDebug 功能是一个非常强大的调试工具,可以帮助开发者快速定位应用程序的问题。下面是 Debug 功能的使用步骤: 1. 在 Android Studio 打开需要调试的项目,点击工具栏上的 Debug 按钮,进入 Debug 模式。 2. 在 Debug 模式下,可以通过在代码添加断点,来暂停程序执行,查看当前的变量值、代码位置、调用栈等等信息。在需要暂停程序执行的位置,点击代码行号左侧的空白区域,即可添加一个断点。 3. 在程序运行时,当执行到断点处时,程序会自动停止执行,进入 Debug 模式。此时,可以查看当前的变量值、代码位置、调用栈等等信息。 4. 在 Debug 模式下,可以使用工具栏上的调试工具,例如:Step Over(单步执行)、Step Into(进入方法调用)、Step Out(跳出方法调用)等,来逐步执行程序,并查看每一步的执行结果和变量值。 5. 在 Debug 模式下,还可以使用 Watches 窗口,来监视某个变量或表达式的值。在 Watches 窗口,可以添加需要监视的变量或表达式,并实时查看其值的变化。 6. 在 Debug 模式下,还可以使用 Evaluate Expression 窗口,来动态计算某个表达式的值。在 Evaluate Expression 窗口,可以输入需要计算的表达式,并查看其计算结果。 总之,Android StudioDebug 功能可以帮助开发者快速定位应用程序的问题,提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值