对于 iOS 开发者来说,应用发布和代码签名证书大概是最令人头疼的两个环节了,这倒不是因为技术上有多难,而是它们的操作流程相当麻烦,尤其是在中国的网络环境下。
一般来讲,手动发布应用更新大致有以下流程:修改所有 Target 的版本号、用 Xcode 给项目 Archive、在 Xcode Organizer 中上传到 App Store、到 iTunes Connect 更新相关信息、提交给苹果审核。而其中上传那一步在不翻墙的情况下成功率极低,经常会卡在「Authenticating with the iTunes Store…」,而且系统 SOCKS 代理(如 Shadowsocks)在此时似乎并不起作用,只有使用 Proxifier 或者 VPN 才有效果。也是基于这个原因,我一般不会直接在 Organizer 中直接上传,而是先导出为 .ipa 文件,再使用 Xcode 附带的 Application Loader 上传,这样就免去了上传失败的话每次直接上传时将 .xcarchive 转为 .ipa 的时间。
当然以上还没考虑第一次发布时配置证书的流程,一个初学者面对苹果开发者中心琳琅满目的 Certificates / Identifiers / Provisioning Profiles 多半是一脸懵逼,不过幸运的是从 Xcode 8 开始已经能够比较完美地自动管理代码签名了,不再像以前一样需要自己去 Fix issues。
对于 iOS 应用的部署,如果你也像我一样饱受折磨,fastlane 也许是你的救星。