FLEX(Flipboard Explorer)是Flipboard官方发布的一组专门用于iOS开发的应用内调试工具,其主要开发者为Flipboard公司旗下的iOS工程师Ryan Olson。 和许多调试工具不同的是,FLEX不仅能在模拟器和物理设备上良好运作,而且还可直接在App中运行,开发者无需将其连接到LLDB/Xcode或其他远 程调试服务器。在调用FLEX时,应用窗口会显示一个工具栏,而在这个工具栏中,开发者可以对正在运行中的App的每一处状态进行查看或修改。
主要特性如下:
- 在层级中检查和修改视图;
- 可查看任意对象的属性和变量,并支持动态调整;
- 动态调用实例和类方法;
- 支持通过扫描堆来访问活动对象;
- 可在应用沙盒中查看文件系统;
- 直接在应用中检测所有类,以及链接的所有公、私有系统框架;
- 可快速访问[UIApplication sharedApplication]、应用委托以及关键窗口上的根视图控制器等所有可用对象;
- 支持动态查看和编辑NSUserDefaults值。
FLEX的使用方法也非常简单,在Github上,Flipboard详细列举了精简和完整两个版本的使用代码:
- //short version
- [[FLEXManager sharedManager] showExplorer];
- //more complete version
- #if DEBUG
- #import "FLEXManager.h"
- #endif
- ...
- - (void)handleSixFingerQuadrupleTap:(UITapGestureRecognizer *)tapRecognizer
- {
- #if DEBUG
- if (tapRecognizer.state == UIGestureRecognizerStateRecognized) {
- // This could also live in a handler for a keyboard shortcut, debug menu item, etc.
- [[FLEXManager sharedManager] showExplorer];
- }
- #endif
- }
相关链接:FLEX的mobilehub主页、Github托管地址