大家好,我是Mac应用《WoodPecker》和iOS应用《App计划》作者,《WoodPecker》近期刚上线,给大家分享一下这款应用和一些想法。


  简单介绍下这两款App:

    《WoodPecker》是一款方便iOS开发者查看App内部状况应用,目前支持查看、修改沙盒文件,监控App网络请求,在线调试WebView,开发者还可以自定义功能插件。

    《App计划》是一款可以定时打开其他App的应用,之前少数派一周App中做过介绍。


我为什么开发《WoodPecker》?


当一个想法在你脑子里不停的跳来跳去,就算把它搁置一旁,等再次想起还是能激起你内心的冲动,就是时候动手了。

    在开发iOS App时,我常需要查看App内的文件,UserDefaults,本地通知等数据。前几次遇到时会写临时代码,或用Xcode导出文件解决。然而后面持续遇到时,根据程序员的直觉:“嗯!是时候造个轮子了!”,于是写了工具代码实现了在App内完成这些工作。

    一段时间后,发现在手机屏幕上查看并不十分方便,更好的办法应该是在电脑上查看,另外其他开发者肯定也有类似的需求,这时便有了开发一款Mac应用的想法,但由于技术水平和时间限制,想法就一直被搁置。

    然而这个想法就像一个定时器一样,过段时间就在脑子里触发一下,让人心里直痒痒。 直到去年10月份,终于按捺不住,打开Xcode,几个月后在App Store上线了《WoodPecker》,当第一次将它用在公司的App上,所有的数据在眼前都一一呈现,那种感觉真是太奇妙!

《WoodPecker》可以做什么?

    某种程度上,可以将它看做Xcode的扩展工具,很多功能比如,查看沙盒文件,监控App网络请求,查看UserDefaults,KeyChain数据等等,Xcode没有提供,或者不够好用,另外有很多开发者自己个性化的功能Xcode也不能提供,那么就可以通过WoodPecker来完成。
《WoodPecker》在Mac客户端和你的App之间通过socket实现双向通信,并提供了上层易用的通信Api,让数据在App和Mac之间轻松传递,再通过强大易用的工具集,可以极大的方便开发者开发调试App。

目前内置工具可以实现:
  1. 轻松操作沙盒文件,可在Mac端查看,编辑,更新App沙盒文件,支持常见文本、图片、sqlite等文件格式。
  2. 监控App的网络请求,将App内的所有网络请求同步到Mac客户端显示,无需设置代理。
  3. 在Mac上控制App内WebView执行Javascript,方便在线调试App内网页。
另外,还有友好的插件支持:

《WoodPecker》的核心在于提供一套稳定、易用的通信Api,让开发者可以轻松在Mac和App之间传递数据,并在Mac上提供友好的显示支持,所以从开发初期就提供了完整的插件支持。现在开发者可以很方便定制自己的工具,与现有开发流程相互配合。

分享一点开发经验


     从一个想法到具体的产品,需要开发几个月,甚至上年的工作,对个人开发者来说,确实是不小的工作。在开发两款App的过程中通过自己与自己的斗争、协调,有几条适合自己的经验。

  1. 将任务分解为多个子任务,按步骤实现。
    • 时间上,将长期任务细分为多个短期子任务,实现一个功能可能要几周,但实现一个子任务可能只需要一到两天,以实现一个个子任务为目标,步步为营。
    • 类型上,将任务中的难点、不清楚的技术点分解出来,专门安排时间处理。
  2. 不死磕自己,对自己好点。 一个技术难点、或者很麻烦的地方,不过分浪费时间在上面,或者调整其他方式实现,最终的产品不仅要让用户用的爽,开发过程也要让自己的舒服一些。

    在开发一个功能前,我习惯用Evernote先创建文件,分析有哪些功能点,然后将功能点按重要度、难度排序,然后建立任务,开发时也会不停记录调整。通过任务分解,开发时的耐心,和对产品质量的信心会逐渐增强。

第一版上线前整理的任务


对“工具”的一点想法


    生活工作中很多事情其实不是没这个需求,而是实现成本过高,比如打扫卫生,很多人都希望房间整洁,但由于难用的清洁工具,很多人可能就懒得去做,但随着扫地机器人和新式拖把的出现,更多人会乐于去做这些事情,当清洁成为习惯,可能就慢慢变成了刚需。

希望《WoodPecker》的出现能让开发者做更多之前不愿意做的事。 



《WoodPecker》目前售价 6 元,欢迎iOS开发者朋友使用!

应用官网:http://www.woodpeck.cn