如何Debug调试Android程序

news2024/11/24 13:05:00

当开发过程中遇到一些奇怪的bug,但又迟迟定位不出来原因是什么的时候,最好的解决办法就是调试了。调试允许我们逐行地执行代码,并可以实时观察内存中的数据,从而能够比较轻易地查出问题的原因。总结一下使用Android Studio来调试Android程序的技巧。

1、调试工作的第一步肯定是添加断点,假设这里我要调试点击事件没有反应的问题,那肯定定位到监听器的逻辑代码部分,然后在第一行代码左边点击一下就可以添加断点了。

在这里插入图片描述
如果想取消这个断点,再次对着它点击就可以了。

2、添加好断点后,接下来就是调试了,点击顶部工具栏中Debug按钮(小虫子),就会使用调试模式来启动程序。

在这里插入图片描述

3、程序运行起来时,首先会看到一个Debug提示框,这个框很快会自动消失,然后我们对列表项进行点击,这时候Android Studio就会自动打开Debug窗口。接下来每按一次F8,代码就会向下执行一行,并且通过Variables视图还可以看到内存中的数据。

在这里插入图片描述

4、可以查看到执行过程中错误的变量值,这样就通过调试的方法轻松定位问题了。调试完成后点击Debug窗口中的Stop按钮来结束调试即可。还有一种动态调试方法,不需要选择Debug模式启动程序,就使用正常的方式来启动程序。先运行程序,然后点击工具栏的Attach debugger to Android process按钮。

在这里插入图片描述
此时会弹出一个进程选择提示框,也就是当前程序的进程,选中这个进程,然后点击OK按钮,就会进入调试模式了。

在这里插入图片描述
会打开这样的窗口:
在这里插入图片描述
然后点击一下列表项,触发了断点,就会自动打开Debug窗口了。

在这里插入图片描述

Debug和Relase的最大区别在于Debug模式下会有程序执行过程中的信息,所以执行较慢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/589146.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

又双叒添新证书:上海斯歌通过ISO9001和ISO27001认证

近期,上海斯歌顺利通过权威机构审查,正式成为ISO9001质量管理体系和ISO27001信息管理安全体系双重认证企业。 可以说ISO9001及ISO27001的认证,既是斯歌坚持管理标准化、程序化、规范化的成果;也是国际标准化组织(ISO&a…

Vue3通透教程【十六】TS自动编译

文章目录 🌟 写在前面🌟 自动编译🌟 编译器的配置文件🌟 写在最后 🌟 写在前面 专栏介绍: 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章,应粉丝要求开始更新 Vue3 的相关技术文章&#xff0…

Apache的配置与应用(构建web、日志分割及AWStats分析系统)

Apache的配置与应用 一、构建虚拟Web主机二、httpd服务支持的三种虚拟机类型1、基于域名的虚拟主机2、基于IP地址的虚拟主机3、基于端口的虚拟主机 三、构建web虚拟目录与用户授权限制1、创建用户认证数据文件2、添加用户授权配置3、验证用户访问权限4、在客户机中浏览器访问 四…

F牌独立站都有哪些收款方式?各有什么优缺点?

最近几个月以来,FP独立站的收款支付问题变得非常焦灼,不少跨境卖家忧心忡忡,害怕自己收不了款血本无归。今天,我跟大家介绍几种FP独立站的收款方式,以及解析他们各有哪些优缺点,方便卖家选择。 一、TT电汇 …

Go GPM 调度器介绍

Go GPM 调度器介绍 1 简介 ​ 这几天在学习Go的GPM机制,于是就整理了一下收集的资料分享给大家,文章末尾有原文链接。主要介绍了Go在运行时调度器的基本实现逻辑和演变过程。 ​ 2 什么是Go调度器 ​ Go调度器很轻量也很简单,足以撑起gorout…

数据结构基础-数组

2.1 数组 概述 定义 在计算机科学中,数组是由一组元素(值或变量)组成的数据结构,每个元素有至少一个索引或键来标识 In computer science, an array is a data structure consisting of a collection of elements (values or v…

在 Linux 中启动时自动启动 Docker 容器的 2 种方法

Docker 是一种流行的容器化平台,允许开发人员将应用程序及其依赖项打包成一个独立的容器,以便在不同环境中运行。在 Linux 系统中,我们可以通过配置来实现在系统启动时自动启动 Docker 容器。本文将详细介绍两种方法,以便您了解如…

软件测试面试了一个00后,让我见识到了什么是内卷届的天花板

公司前段缺人,也面了不少测试,结果竟然没有一个合适的。一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资也不低,面试的人很多,但平均水平很让人失望。令我印象最深的是一个00后测试员,他…

Android bitmap保姆级教学

1. 认识Bitmap Bitmap是一个final类,因此不能被继承。Bitmap只有一个构造方法,且该构造方法是没有任何访问权限修饰符修饰,也就是说该构造方法是friendly,但是谷歌称Bitmap的构造方法是private(私有的)&am…

【C++】this 指针的概念

欢迎来到博主 Apeiron 的博客,祝您旅程愉快 ! 时止则止,时行则行。动静不失其时,其道光明。 目录 1、缘起 2、this 指针的用途 2.1、用途 1 2.1.1 解法 1 2.1.2 解法 2 2.2、用途 2 2.3、用途 3 3、总结 1、缘起 我…

网络编程_TCP/IP四层协议分层

网络编程_TCP/IP四层协议分层 1. OSI七层协议模型 (open system interconnection)与TCP/IP四层协议分层2. 协议封装3. TCP 协议头部4.三次握手5.滑动窗口正常情况丢包情况 6.四次挥手 1. OSI七层协议模型 (open system interconnection)与TCP/IP四层协议分层 OSI七层协议模型 (…

珞珈一号夜间灯光数据校正流程

一、前言 随着珞珈一号夜间灯光数据的发射,其高分辨率等优异性能,可以为我国相关部门监测国内和全球宏观经济运行情况,为政府决策提供客观依据,珞珈一号理想情况下荷在15天内完成绘制全球夜光影像,提供我国或者全球GDP指数、碳排放指数、城市住房空置率指数等专题产品。 …

larvael dcat-admin 表单设置自定义样式

表单有些不是自己想要的样式想要覆写或者增加 可以如下 public function form() {​​​​​​​$this->column(6, function () {$this->dateRange(order_created_at.start, order_created_at.end)->label(下单时间)->setLabelClass([input-group]) // 设置样式-&…

盘点几个实现VLAN间路由的好方法

在真实的网络中,常常需要跨VLAN通信。 许多网络工作者通常选择一些方法来实现不同VLAN中的主机之间的相互访问,如单臂路由。 然而,由于单臂路由技术的一些限制,如带宽和转发效率,这种技术是很少使用。 三层交换机在…

SpringBoot 集成WebSocket详解

感谢参考文章的博主,关于WebSocket概述和使用写的都很详细,这里结合自己的理解,整理了一下。 一、WebSocket概述 1、WebSocket简介 WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器…

一文详解 Sa-Token 中的 SaSession 对象

Sa-Token 是一个轻量级 java 权限认证框架,主要解决登录认证、权限认证、单点登录、OAuth2、微服务网关鉴权 等一系列权限相关问题。 Gitee 开源地址:https://gitee.com/dromara/sa-token 本文将详细介绍 Sa-Token 中的不同 SaSession 对象的区别&#x…

由jar包冲突导致的logback日志不输出

一、前言 最近升级一个老项目,发面日志没有按照预期的生成。 1、resource下面有logback配置但没有生成日志 检查resource目录下,发现有logback.xml配置,但部署在服务器的项目没有按配置生成日志。于是启动本地tomcat发现日志按logback配置…

【创造一个源点去建图】【有等级限制的dijkstra(采用多次dijk方法处理)】昂贵的聘礼

昂贵的聘礼 题意分析 原题链接 题意分析 本题需要注意: 等级限制比较复杂,可以最后考虑本题说 由 B物品 可以换 A物品,想到了B节点可以走到A节点,所以构建图由于我们是要买一个点再开始换的,所以我们可以构建一个源点…

bird 2023 比赛总结

1. 引言 📌 参加这场比赛的时间,应该是还剩一个月不到了,本来没啥想法,因为在忙一些其它的比赛或者是工作和个人上的烦心事,不过在看过了赛题分析后,整体给我感观是一道挺有意思的学习赛,不仅仅…

ESP32-CAM开发板 使用 sqlite3 数据库存储数据记录

忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2023-05-29 ❤️❤️ 本篇更新记录 2023-05-29 ❤️🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言📝&#x1f64…