xcode反汇编调试iOS模拟器程序(四)自动断点应用之NSNotificationCenter

简介: 知道怎么查看后,先看看有什么实际应用,拿NSNotificationCenter来做实践吧。 首先在某个容易进入的地方加断点,并停在那,例如main函数。

知道怎么查看后,先看看有什么实际应用,拿NSNotificationCenter来做实践吧。

首先在某个容易进入的地方加断点,并停在那,例如main函数。在gdb或lldb输入命令,手工添加断点。如下图:

输入的命令如下:

b -[NSNotificationCenter addObserver:selector:name:object:]
b -[NSNotificationCenter addObserverForName:object:queue:usingBlock:]
然后continue运行。很快,NSNotificationCenter的断点就会触发,是由系统的类调用的。因为是命令行添加的断点,所以不会被xcode记录,下次启动也不会再进入,此时我们需要在xcode里再加断点,如下图,在函数第一行的行号栏单击,标上蓝色断点标记。

然后,在断点上右键单击,选择“Edit Breakpoint...“

按照下图设置好:

点击”Done“后完成(另一个函数的照样做就行)。 最后,把Main函数上的断点去掉,然后重启程序。 这时就会看见命令行狂打印log了。



这log有什么用?呵呵,自己挖掘吧,至少你已经发现好多个non-public API了。


转载请注明出处:http://blog.csdn.net/hursing

xcode反汇编调试iOS模拟器程序
(一)查看反汇编
(二)看懂反汇编
(三)查看Objective-C函数与参数
(四)自动断点应用之NSNotificationCenter
(五)调试objc_msgSend函数
(六)函数出入口处的处理与局部变量
(七)Debug与Release的区别

(八)反汇编自己的代码来掌握规则

目录
相关文章
|
1月前
|
监控 算法 iOS开发
Xcode调试内存最新理解
【8月更文挑战第12天】在Xcode中进行内存调试对确保iOS应用的稳定性和性能至关重要。主要利用Instruments套件内的工具如Leaks检测内存泄漏,Allocations追踪内存分配详情,及Memory Graph Debugger提供直观的内存结构视图。Xcode还支持内存图视图以了解对象布局与引用,动态内存分析实现实时监控,及符号化调试信息帮助定位问题源代码。最佳实践包括遵循内存管理原则、定期调试、优化代码逻辑,以及学习优秀代码案例。通过这些技术和策略,开发者能有效管理和优化应用的内存使用。
|
4月前
|
IDE 开发工具 Swift
【Swift开发专栏】Swift的Xcode调试技巧
【4月更文挑战第30天】本文介绍了Swift开发者必备的Xcode调试技巧,分为三部分:调试界面概览、常用操作和高级技术。内容涵盖调试区域、断点管理、单步调试、变量查看及LLDB命令行调试。通过学习条件断点、异常断点、视图调试等高级技术,开发者能提升问题解决效率。熟悉这些工具将有助于优化开发流程并增强项目性能。
95 1
|
4月前
|
Windows
86/88汇编代码的运行调试
86/88汇编代码的运行调试
36 0
|
4月前
|
iOS开发
XCode控制台调试无法看到函数跟踪或无法看到输出的日志问题及解决方案
XCode控制台调试无法看到函数跟踪或无法看到输出的日志问题及解决方案
167 0
|
4月前
|
安全 测试技术 iOS开发
无需付费证书通过Xcode进行安装调试
无需付费证书通过Xcode进行安装调试
220 0
|
10月前
|
iOS开发
[√]xcode无线调试
[√]xcode无线调试
89 0
|
Swift iOS开发
iOS OC混编Swift 后者无法走断点
iOS OC混编Swift 后者无法走断点
74 0
|
搜索推荐 iOS开发 芯片
记录一次Xcode 模拟器项目编译问题
记录一次Xcode 模拟器项目编译问题
记录一次Xcode 模拟器项目编译问题
|
存储
汇编语言与微机原理-变量的调试与分析
汇编语言与微机原理-变量的调试与分析
149 0
汇编语言与微机原理-变量的调试与分析
|
开发工具 Perl
Xcode12 适配模拟器问题总结
Xcode12运行模拟器会报以下错误
201 0