现在的位置: 首页 > 综合 > 正文

开源框架:PonyDebugger

2013年08月17日 ⁄ 综合 ⁄ 共 1603字 ⁄ 字号 评论关闭

引言:

PonyDebugger是一个很给力的iOS调试工具,它的监视器安装在Chrome浏览器下做为插件使用,通过监视器和PonyDebugger的iOS
SDK相辅相成,可以很好的监视App的运作情况.它的突出的亮点功能如下:

1:实时的检测应用与网络的交互情况

2:查看应用内Core Data的数据变化

3:实时反馈UI层的层级情况

参考资料: 

1:简单配置PonyDebugger

http://iiiyu.com/2013/01/14/simple-configuration-ponydebugger/

安装:

Github托管地址:PonyDebugger

PonyDebugger分为iOS端和服务端两个部分

iOS端安装的首先方式是CocoaPods.

服务端PonyDebugger
Chrome
插件的安装方式如下:

1: XcodeCommand Line Tools 必须安装

2: 在Shell里面执行下面命令

curl -sk https://cloud.github.com/downloads/square/PonyDebugger/bootstrap-ponyd.py | \
  python - --ponyd-symlink=/usr/local/bin/ponyd ~/Library/PonyDebugger

3: 安装成功以后,继续在Shell里面执行(注意:以后每次使用PonyDebugger服务端之前都需要在终端执行这行代码)

ponyd serve --listen-interface=127.0.0.1

4: 打开你的浏览器输入地址

没什么意外,显示出来的页面如下,即表示你已经成功安装服务端了

使用:

iOS端的PonyDebugger 是单例模式存在,所以初始化方法如下:

PDDebugger *debugger = [PDDebugger defaultInstance];

之后再使用如下方法建立与服务端的连接:

[debugger connectToURL:[NSURL URLWithString:@"ws://localhost:9000/device"]];

以下开始具体功能

1:开启应用视图层级解析

[debugger enableViewHierarchyDebugging];

开启后,可以在服务端中看到以xml文件形式生成的View层级情况,如图:

其中所看到的frame
class
等字段可以通过以下方法实现自定义是否需要在层级中显示,是以KVO形式获取的.

[debugger setDisplayedViewAttributeKeyPaths:@[@"frame",@"hidden",@"class",@"tag",@"alpha",@"userInteractionEnabled"]];

2:开启网络请求监听

[debugger enableNetworkTrafficDebugging];

开启后,可以设置为是否监听所有的网络请求:

[debugger forwardAllNetworkTraffic];

还是只监听某一个类网络请求:

[debugger forwardNetworkTrafficFromDelegateClass:[User class]];

3:开启Core Data 数据浏览

[debugger enableCoreDataDebugging];

开启后,继续添加需要检测的CoreData上下文

[debugger addManagedObjectContext:[StackMobManager sharedInstance].keyManagedObjectContext];

以上三步的所有功能结果都将站在服务端

总结:

PonyDebuggerDebug带来了一些辅助,对于博主来说最为实用的是网络检测请求. 至于其他功能可能是习惯原因,还无法很顺手的用起来. 还有待继续探究.

抱歉!评论已关闭.