升级 Swift 3

May 04, 2017

拖了好久,终于跟产品争取到时间来做 Swift 3 的升级,历时6天,目前已经升级完成,简单记录一下吧。

流程

  1. 升级 Pod 中和项目的 Swift 三方库:先查看三方库是否有对应 Swift 3 版本,如果没有的话,是否有替代方案。现在大部分三方库都支持了 Swift 3,非 Swift 三方库暂且不要升级
  2. Xcode Auto-Fix(注意不要选中 pod 中已升级的三方库
  3. 编译后就可以开始 fix 一大波错误啦 /(ㄒoㄒ)/~~
  4. 消除警告

问题

  1. DeviceToken.description is 32 bytes, 导致注册 token 失败,收不到 push。解决方案

Tips

  1. 用另外一台电脑做升级,这样在遇到疑问时,还可以查看原来的代码,比如三方库的方法。
  2. 流程3中的错误确实有很多,改着改着不免心烦意乱,这里可以选择注释大法,错误的地方全部注释掉,编译成功后,再从一个 vc 开始改。

扩展

  1. Swift 3
  2. Lessons Learnt on Swift 3 Migration