历时数周或数月开发出来了应用或游戏,可为什么体验不流畅?怎么能查出其中的纰漏?这些需要调试诊断工具从旁协助。调试是开发过程中必不可少的重要一环。本文会列举几个比较有效的调试诊断工具,可以帮助你寻根究底,以最快的速度发现、解决Bug。
这是一家专注于API工具开发的公司,其创始人John Sheehan曾就职于IFTTT和Twilio。Runscope是一款集调试、测试于一身的网络服务,而且支持Ruby、Java、C#等多种语言。它可以捕捉请求,支持包括AFNetworking、HTTParty以及其他公共API的请求。
Runscope监控API请求
Cocoa LumberJack是一个功能强大的NSlog,是通用的Cocoa日志框架之一。它可以提供更高级的log功能,比如记录log至文件或网络,并可根据log的级别(info、debug、warn、error)进行筛选。众所周知,NSlog虽然功能强大,但却普遍存在不支持分级别log、仅支持本地打印的问题,而且在大量处理log时,会降低程序运行效率。而Cocoa LumberJack则不存在这样的制约。
SimPholders是一个快速简单的小工具,可以帮助开发者快速访问iPhone模拟器应用。它可以访问模拟器的文件夹,重置库和文件,以及删除选定的应用程序。
DCIntrospect是一个UI布局调试库。利用它,你可以看到UI界面中每个元素的精确尺寸,还可水平或垂直拖动视图元素。与其相似的工具还有Spark Inspector和Revealapp,我们稍后也会介绍。
Pony Debugger是由美国著名移动支付公司Square的iOS开发团队针对iOS开发的网络调试工具,它的名字来源于Square的Objective-C网络库PonyExpress。开发者可以利用它来调试应用的网络流量,并可以对应用的核心数据进行远程调试。通过注册管理对象,开发者可以浏览所有的实体、属性,利用Chrome的IndexedDB进行数据关系查询。
Spark Inspector是一个UI界面调试工具,可利用3D形式展示视图元素,帮助你进行实时调试。同时,它还支持通知监视器,可以显示每个NSNotification、完整的堆栈跟踪信息、调用方法列表等。这个工具不是免费的,需要支付大约260元购买。不过,如果你感兴趣,官网还提供30天的免费试用版。
Revealapp可以让你以2D或3D的形式查看应用运行时的视图图层,快速调试视图层级和渲染问题。有时,应用的视图层级可能非常多,在Revealapp中,只需要双击视图界面,就可以将其拆分,便于浏览每个子视图。目前这款工具仍为Beta版,如果你感兴趣,不妨试试。