如何快速列出App的所有+load方法
Objective C +load
方法是个神奇又邪恶的方法。
- 当新手得到它时,会惊讶于它的神奇。
- 当高手得到它时,会沉迷其中无法自拔。
- 当老手得到它时,会惊恐于它的邪恶。
多数大型App都已经或者正在想办法去摆脱它。那么,如果快速看到你的App中有多少+load方法,看看中毒有多深。
假设如下场景:
一天你在愉快的用Xcode调试程序,
打开Xcode,按下F5,
突然,你想看一下App中的+load方法有多少?
点击一下Pause,然后输入
br s -r "\+\[.+ load\]$"
然后输入
br list
或许你会惊讶,原来我的App中+load这么多(或者少)
原理
使用了lldb的breakpoint命令。
br s -r "正则"
就是
breakpoint set -r "正则"
通过正则匹配符号设置断点。
小问题
那么想想,如果这些+load方法中的代码出现了crash,你的crash监控(bugly等等)能监控到吗?
当然得到的90%的回答是:不会Crash的。
让我想起了特朗普的一句话:我的”代码”很完美。
哈哈 :)
总结
很有趣:)
哎,我好菜,我要去学习《基于桥的全量方法Hook》了
http://satanwoo.github.io/2020/04/26/TrampolineHookOpenSource/
大家喜欢的话,就关注下订阅号,以示鼓励: