要在Xcode 8中完全使用Swift 3.0,个人感觉不现实,因为有些重要的开源框架无法同时支持Swift 3.0和iOS 8.0,比如最常用的Alamofire
,4.0版本才支持Swift 3.0,但却要求iOS 9.0+。
目前的做法是把Xcode 8 bulid setting
中的Use Legacy Swift Language Version
设为Yes
,然后在集成开源框架时,必须指定Swift 2.3版本的,比如SwifyJSON
,在Podfile
中应该这么写:pod 'SwiftyJSON', '2.4.0'
,开源框架一般会保留一个Swift 2的分支。
等什么时候不需要适配iOS 8,或者Swift 3.0版本的开源框架不再要求iOS 9.0+时,再彻底转到Swift 3.0。