IOS应用程序调试


简介

当我们做应用程序的时候,可能会犯各种错误,这可能会导致各种不同的错误。因此,为了修复这些错误或缺陷,我们需要来调试应用程序。

选择一个调试器

Xcode中调试器即 GDB 和 LLDB 调试器,GDB 是默认的。 LLDB是一个调试器是LLVM开源的编译器项目的一部分。您可以更改调试,编辑活动计划选项。

如何查找编码错误?

我们只需要建立我们的应用程序,代码被编译器编译,所有的消息,错误和警告将显示以及错误的原因,我们可以纠正他们。可以点击 product,然后点击分析,将在应用程序中可能发生的问题。

设置断点

断点帮助我们了解我们的应用程序对象,帮助我们找出许多缺陷,包括逻辑问题的不同状态。我们只需要点击创建一个断点的行号。我们可以通过点击并拖动它删除断点。如下所示

debug_Breakpoint

当我们运行应用程序并选择playVideo,按钮的应用程序将被暂停,我们来分析一下我们的应用程序的状态。当断点被触发时,我们将得到一个输出,如下图所示

debug_BreakpointStop

可以轻松地确定哪个线程触发断点。在底部可以看到对象,如self,sender等,这些持有相应的对象的值,我们可以展开一些这些对象,看看他们每个的状态是什么。

要继续应用程序,我们在调试区选择继续按钮(最左边的按钮),如下图所示。其他选项包括步骤和单步跳过

IOS应用程序调试

异常断点

我们也有异常断点,触发应用程序停止发生异常的位置。通过选择调试导航后选择+按钮,我们可以创建异常断点。将得到下面的窗口

debug_ExceptionBreakpoint

然后,我们需要选择 Exception Breakpoint (添加异常)断点,它会显示下面的窗口

debug_ExceptionBreakpointAll

下一步是什么?

你可以在 Xcode 4 用户指南 知道更多关于调试和其他Xcode功能的知识。

若文章对你有帮助,可以点赞或打赏支持我们。发布者:lyh会员,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/ios%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e8%b0%83%e8%af%95/

(0)
lyhlyh会员认证作者
上一篇 2023年 4月 1日 下午9:20
下一篇 2023年 4月 10日 下午9:12

相关推荐

  • volname

    文章目录volname补充说明语法参数 volname 显示指定的ISO-9660格式的设备的卷名称 补充说明 volname命令 用于显示指定的“ISO-9660”格式的设备的卷…

    入门教程 2024年 3月 11日
  • dmesg

    文章目录dmesg补充说明语法选项实例 dmesg 显示Linux系统启动信息 补充说明 dmesg命令 被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring …

    入门教程 2023年 12月 7日
  • 常量

    文章目录常量定义常量字符串常量布尔常量数值常量数值表达式 常量 上一节:第四篇 类型下一节:第六篇 函数 这是本Golang系列教程的第五篇。 定义常量 常量(constant)表…

    2023年 12月 5日
  • tput

    文章目录tput补充说明什么是 terminfo 数据库?实例 tput 通过terminfo数据库对终端会话进行初始化和操作 补充说明 tput命令 将通过 terminfo 数…

    入门教程 2024年 3月 11日
  • pvck

    文章目录pvck补充说明语法选项参数实例 pvck 检测物理卷的LVM元数据的一致性 补充说明 pvck命令 用来检测物理卷的LVM元数据的一致性。默认情况下,物理卷中的前4个扇区…

    入门教程 2024年 3月 1日
  • 33. 函数是一等公民(头等函数)

    欢迎来到 Golang 系列教程的第 33 篇。 文章目录什么是头等(第一类)函数?匿名函数用户自定义的函数类型高阶函数把函数作为参数,传递给其它函数在其它函数中返回函数闭包头等函…

    2023年 12月 5日
  • Docker 更改默认存储目录

    由于安装docker,默认的存储目录在根磁盘,会导致我们在拉取镜像的时候,更目录的空间越来越小,不修改存储目录的情况下,会导致我们可用空间越来越小,最终导致根目录不够用。根目录大点…

    2021年 11月 4日
  • vgextend

    文章目录vgextend补充说明语法选项参数实例 vgextend 向卷组中添加物理卷 补充说明 vgextend命令 用于动态扩展LVM卷组,它通过向卷组中添加物理卷来增加卷组的…

    入门教程 2024年 3月 11日
  • ifup

    文章目录ifup补充说明语法参数实例 ifup 激活指定的网络接口 补充说明 ifup命令 用于激活指定的网络接口。 语法 ifup(参数) 参数 网络接口:要激活的网络接口。 实…

    入门教程 2023年 12月 19日
  • iconv

    文章目录iconv补充说明语法选项实例 iconv 转换文件的编码方式 补充说明 iconv命令 是用来转换文件的编码方式的,比如它可以将UTF8编码的转换成GB18030的编码,…

    入门教程 2023年 12月 19日
Translate »