操作和设计不一致,看一下界面吧!
Reveal和Charles基本上是每次码iOS代码必开的两个工具,更不用说在逆向的时候。Reveal比Xcode自带的视图层级查看器强大多了
查看视图层次结构
集成使用Reveal
加断点的方式集成Reveal(添加Reveal的framework到工程,不推荐)
- 打开iOS工程,选择 View → Navigators → Show Breakpoint Navigator
- 在面板左下角,点击 + 按钮并选择 Add Symbolic Breakpoint...
- 在 Symbol 输入区内输入 UIApplicationMain
- 点击 Add Action 按钮, 确认 Action 被设置为 Debugger Command
- 将以下lldb命令拷贝到 Action 的输入区内: (注意: 请确认Reveal.app的路径信息符合您Mac的实际位置)
- 选中Automatically continue after evaluating actions选项
- 完成上述步骤以后,在新创建的断点上面点击右键,弹出如下菜单并选择,如下图所示:(以后无论分析任何项目,都可以直接启动Reveal 并分析。)
expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2) : ((void*)0)
启动一个项目调试,Xcode控制台会输出如下log,表明配置正确,Reveal已经可以正常启动使用
不想使用时
Symbolic Breakpoint
的勾取消即可
破解优化
不完全破解,30天试用期过后在操作
- 把~/Library/Preferences/com.ittybittyapps.Reveal.plist文件删掉,必须重启一下电脑
$ rm ~/Library/Preferences/com.ittybittyapps.Reveal.plist
- 破解不用重启电脑
defaults delete com.ittybittyapps.Reveal