每次iOS升级,总会有许多API被更新,其中的一部分会被apple公布出来,而更多的则默默无闻,静静地,等待开发者们掉进去。。。
Objc io的御用作者之一Ole Begemann想到了一个很棒的办法来获取所有的API版本差异,原文请戳这里,以下是脱水版译文=。=
译文
本文的思路是通过比较不同版本的SDK的所有头文件,来发现API的变更。
- 首先Clone iOS Runtime Headers Repository到本地
每回apple发布iOS新版本,github上的Nicolas Seriot都非常给力地将所有头文件导出,并慷慨地分享出来。
我们就使用它作为比对源
git clone https://github.com/nst/iOS-Runtime-Headers.git
cd iOS-Runtime-Headers
选择diff工具
这里可以使用git默认的diff tool,但强烈推荐使用惊艳无比的Black Pixel’s new Kaleidoscope 2。与其优秀品质相应地,是70刀的凶残价格,好在作者慷慨地提供了一个15天的试用版=。=
可以在UI上直接设置Kaleidoscope 2为git的默认diff tool,像这样比对
由于Nicolas Seriot目前提供的头文件集合尚未包含iOS 8.0,这里以变化较大的6.1到7.0为例。
git difftool 6.1 7.0
结果如下
这样就可以查看所有framework的API变化啦。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。