版權(quán)聲明:本文為博主原創(chuàng)文章肺稀,歡迎轉(zhuǎn)載鳍侣,轉(zhuǎn)載請注明作者丁稀、原文超鏈接。
隨著 Xcode9 Swift 4.0 的到來倚聚,一些小問題也接踵而至线衫。
許多優(yōu)秀的 Swift 第三方框架還沒有來得及迎接 Swift 4.0 的到來,它們還停留在 Swift3.x 的狀態(tài)惑折。
這個時候新建一個項目授账,使用cocoapods 引入所需的第三方,即使 pod install 成功后惨驶,一編譯工程就是滿屏紅白热,且報錯 Swift compiler Error,如下圖:
不過所幸粗卜,蘋果每次升級 Xcode 都會保留上個版本的 swift屋确。
解決方案,控制編譯時第三方框架所使用的 Swift 版本续扔,有如下兩種方法攻臀。
方法1. 在 Xcode 設(shè)置中手動為每個需要指定 swift 版本的第三方框架設(shè)置 swift 版本,如下圖:
方法2. 在podfile 文件中纱昧,使用 Cocoapods 控制 :
platform :ios, '9.0'
post_install do |installer|
# 需要指定swift編譯版本的第三方的名稱
myTargets = ['Charts','Moya']
installer.pods_project.targets.each do |target|
if myTargets.include? target.name
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.2'
end
end
end
end
use_frameworks!
target 'xxxx' do
pod 'IQKeyboardManager', '~>4.0.6'
pod 'JSONModel'
pod 'KVOController'
pod 'MagicalRecord'
pod 'Mantle'
pod 'MJRefresh'
pod 'Masonry'
pod 'Moya'
pod 'ReactiveSwift'
pod 'SDWebImage'
pod 'SwiftyJSON'
pod 'SDCycleScrollView'
pod 'Charts', '~> 3.0.1'
end
然后再 pod install 一下就可以了刨啸。