断点调试技巧

条件断点
让程序在某个特定的时间点命中断点非常有价值,但要通过一个循环或者递归函数才能让对象等于某个确定的值,是一件令人痛苦的事情。这时候我们可以使用条件断点!
条件断点就是带有条件表达式的断点,只有满足这个条件,程序才会暂停。假想我们只想在对象处于特定状态的时候断点,或者在第N次迭代循环时命中断点。
点击Xcode editor的‘gutter’来添加断点,右键点击断点,然后选择“edit breakpoint”来设置特定条件。

条件断点只有在遇到特定情况时才会中断,你可以提供给一个条件(比如i == 12),或者断点应该忽略的次数。另外,你还可以添加能根据断点自动发生的动作,例如一个debugger command---打印一个值。
提示:添加/删除断点的键盘快捷键是command+\


如何添加异常断点?
1.打开异常断点tab(command+6);2.选择窗口左下角的”+”按钮;3.选择按钮并添加‘exception breakpoint’。
这样,当Xcode遇到异常情况时,将会在引起异常代码的地方发生断点。
 

 Zombies是你的朋友
虽然在有ARC的地方很难再遇到让人难受的EXC_BAD_ACCESS错误了,但是在某些确定的情况下,该错误还是会发生的。当在处理UIPopoverController或者core foundation对象时,我们可以访问一个已经被release掉的对象。一般,当我们release内存中的一个对象时,该对象将被销毁。但是,当Zombies开启时,只是将对象标记为release,实际上该对象还停留在内存中。当我们访问一个Zombie对象时,Xcode可以告诉我们正在访问的对象是一个不应该存在的对象了。因为Xcode知道这个对象是什么,所以可以让我们知道这个对象在哪里,以及这是什么时候发生的。
这里有两种方法可以查找出Zombies对象。使用检查器中的Zombie配置模板,或者在‘Run’ build选项中开启Zombie诊断选项。在Stop按钮的旁边,点击scheme名称,然后选择‘Edit Scheme’,点击diagnostic tab项,并勾选上‘Enable Zombie Objects’。注意,Zombie只能用在模拟器调试中,真机上不能使用。

 
注意,Zombie模式调试仅适用于模拟器,不能在真实设备上使用。
源码地址: https://pan.quark.cn/s/d1f41682e390 miyoubiAuto 米游社每日米游币自动化Python脚本(务必使用Python3) 8更新:更换cookie的获取地址 注意:禁止在B站、贴吧、或各大论坛大肆传播! 作者已退游,项目不维护了。 如果有能力的可以pr修复。 小引一波 推荐关注几个非常可爱有趣的女孩! 欢迎B站搜索: @嘉然今天吃什么 @向晚大魔王 @乃琳Queen @贝拉kira 第三方库 食用方法 下载源码 在Global.py中设置米游社Cookie 运行myb.py 本地第一运行时会自动生产一个文件储存cookie,请勿删除 当前仅支持单个账号! 获取Cookie方法 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 按刷新页面,按下图复制 Cookie: How to get mys cookie 当触发时,可尝试按关闭,然后再刷新页面,最后复制 Cookie。 也可以使用另一种方法: 复制代码 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 控制台粘贴代码并运行,获得类似的输出信息 部分即为所需复制的 Cookie,点击确定复制 部署方法--腾讯云函数版(推荐! ) 下载项目源码和压缩包 进入项目文件夹打开命令行执行以下命令 xxxxxxx为通过上面方式或取得米游社cookie 一定要用双引号包裹!! 例如: png 复制返回内容(包括括号) 例如: QQ截图20210505031552.png 登录腾讯云函数官网 选择函数服务-新建-自定义创建 函数名称随意-地区随意-运行环境Python3....
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值