IOS debug网络PonyDebugger 实践篇
引言:
PonyDebugger是一个很给力的iOS调试工具,它的监视器安装在Chrome浏览器下做为插件使用,通过监视器和PonyDebugger的iOS SDK相辅相成,可以很好的监视App的运作情况.它的突出的亮点功能如下:
1:实时的检测应用与网络的交互情况
2:查看应用内Core Data的数据变化
3:实时反馈UI层的层级情况
快速开始
服务器端
1.安装 Xcode's Command Line Tools
2.在shell里面执行下面命令
curl -skhttps://cloud.github.com/downloads/square/PonyDebugger/bootstrap-ponyd.py | \
python - --ponyd-symlink=/usr/local/bin/ponyd ~/Library/PonyDebugger
出现error的信息的话 可能就是需要管理员权限 去创建
用管理员 权限 登陆 去执行 命令 即可
3. 安装成功以后,在shell里面执行
ponyd serve --listen-interface=127.0.0.1
4. 打开你的浏览器输入地址
看见此图就配置成功了:
从此下载 打包好的 framework,http://download.csdn.net/detail/langyuejing/6390913
此framework 是根据Github源码进行编译的 在Xcode 5上 编译环境 arm64 ,armv7,armv7s 对源码 数据类型做了初步的64位兼容的
可以直接添加到工程里
添加link参数-Objc
在使用的地方 导入
#import <PonyDebugger/PonyDebugger.h>
iOS端的PonyDebugger是单例模式存在,所以初始化方法如下:
之后再使用如下方法建立与服务端的连接:
PDDebugger *debugger = [PDDebugger defaultInstance];
[debugger connectToURL:[NSURL URLWithString:@"ws://localhost:9000/device"]];
以下开始具体功能
1:开启应用视图层级解析
[debugger enableViewHierarchyDebugging];
其中所看到的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];
github 地址
https://github.com/square/PonyDebugger
参考资料:
1:简单配置PonyDebugger
http://iiiyu.com/2013/01/14/simple-configuration-ponydebugger/
这个东东 还是不错 用来监控网络请求 至于core data 很少用 呵呵
IOS debug网络PonyDebugger 实践篇的更多相关文章
- iOS开发网络篇—搭建本地服务器
iOS开发网络篇—搭建本地服务器 一.简单说明 说明:提前下载好相关软件,且安装目录最好安装在全英文路径下.如果路径有中文名,那么可能会出现一些莫名其妙的问题. 提示:提前准备好的软件 apache- ...
- ios htttp网络请求cookie的读取与写入(NSHTTPCookieStorage)
当你访问一个网站时,NSURLRequest都会帮你主动记录下来你访问的站点设置的Cookie,如果 Cookie 存在的话,会把这些信息放在 NSHTTPCookieStorage 容器中共享,当你 ...
- iOS开发网络篇—数据缓存
iOS开发网络篇—数据缓存 一.关于同一个URL的多次请求 有时候,对同一个URL请求多次,返回的数据可能都是一样的,比如服务器上的某张图片,无论下载多少次,返回的数据都是一样的. 上面的情况会造 ...
- iOS常用网络库之AFNetWorking
简介 `AFNetworking`是iOS开发网络API中最常用的第三方库,`github`中的`star`数充分说明了它在iOS开发中第三方库中的江湖地位 github地址:[AFNe ...
- ios的网络数据下载和json解析
ios的网络数据下载和json解析 简介 在本文中,笔者将要给大家介绍如何使用nsurlconnection 从网上下载数据,以及解析json数据格式,以及如何显示数据和图片的异步下载显示. 涉及的知 ...
- iOS开发网络篇—监测网络状态(转)
文章转载自:http://www.cnblogs.com/wendingding/p/3950114.html iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时 ...
- iOS开发网络篇—大文件的多线程断点下载
http://www.cnblogs.com/wendingding/p/3947550.html iOS开发网络篇—多线程断点下载 说明:本文介绍多线程断点下载.项目中使用了苹果自带的类,实现了同时 ...
- iOS开发网络篇—简单介绍ASI框架的使用
iOS开发网络篇—简单介绍ASI框架的使用 说明:本文主要介绍网络编程中常用框架ASI的简单使用. 一.ASI简单介绍 ASI:全称是ASIHTTPRequest,外号“HTTP终结者”,功能十分强大 ...
- iOS开发网络篇—网络编程基础
iOS开发网络篇—网络编程基础 一.为什么要学习网络编程 1.简单说明 在移动互联网时代,移动应用的特征有: (1)几乎所有应用都需要用到网络,比如QQ.微博.网易新闻.优酷.百度地图 (2)只有通过 ...
随机推荐
- poj 1426 Find The Multiple( bfs )
题目:http://poj.org/problem?id=1426 题意:输入一个数,输出这个数的整数 倍,且只有0和1组成 程序里写错了一个数,结果一直MLE.…… #include <ios ...
- hdu 1874 畅通工程续(模板题 spfa floyd)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1874 spfa 模板 #include<iostream> #include<stdio ...
- [原]Unity3D深入浅出 - GUI控件
Unity的GUI类提供了丰富的界面控件,通过组合这些控件,完成和用户交互的界面. Lable:绘制文本和图片 Box:绘制一个图形框 Button:绘制一个响应单击事件的按钮 RepeatButto ...
- SGU 185 Two shortest ★(最短路+网络流)
[题意]给出一个图,求 1 -> n的2条 没有重边的最短路. 真◆神题--卡内存卡得我一脸血= =-- [思路] 一开始我的想法是两遍Dijkstra做一次删一次边不就行了么你们还又Dijks ...
- JQuery: 微博演示
演示图: 完成图: 微博演示代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> ...
- 关于SQL中的Update语句
今天在SQL数据库操作时需要将一张表中的数据Update到另一张表中去, 可是用我以往的写法确怎么也不能成功.代码如下: update table1 a set a.Col1=b.Col2 from ...
- Delphi word
[转载]在Delphi中使用CreateOleObject方法 (2011-08-24 14:20:47) 转载▼ 标签: 转载 原文地址:在Delphi中使用CreateOleObject方法作 ...
- 《Python基础教程(第二版)》学习笔记 -> 第三章 使用字符串
本章讲话介绍如何使用字符串格式化其他的值,并简单了解一下利用字符串的分割.联接.搜索等方法能做些什么. 基本字符串操作 所有标准的序列操作(索引.分片.乘法.判断成员资格.求长度.取最大最小值)对字符 ...
- js会飞的li标签
当点击左边的li标签的时候,这边的li标签飞到右边去,点击右边的li标签飞到左边来,并且有顺序 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...
- Inf2Cat, signability test failed.
驱动开发真不是那么好玩的,折腾了几天,排除了几个错误,又有新的错误了. 错误 1 error -2: "Inf2Cat, signability test failed.&quo ...