ERROR Tip:
FontBlaster.swift:113:57: Cannot force unwrap value of non-optional type 'CGFont'
FontBlaster.swift:115:48: Cannot use optional chaining on non-optional value of type 'CGFont'
一、由于cocoaPods引入Swift是静态的.a引入Swift库是frameworks;如果Podfile中既有OC库又有Swift库,则我们通常在target之前加上 use_frameworks!
将cocoapods依赖库更改为frameworks二、也就是解决上面ERROR Tip:的方法,找到APPtarget -> Build Setting ->Swift Compiler Language 将Swift Language Version更改为最新版本。不要急着编译!!!!!如果之前已经更新过cocoapods,那么你需要重新pod install 或者pod update一下。原因大概是之前的frameworks是旧的Swift版本创建的,此时只有重新更新cocoapods,新的frameworks才会按照APPTarget的Swift Language Version版本去导入frameworks。
三、对于OC的库因为我们现在是按照frameworks导入的所以所有的第三方头文件都要修改为#import "AFNetworking.h" 而不是#import <AFNetworking.h>。此时编译链接应该可以正常使用了。
注:当然也可以使用如下的pod命令来指定cocoapods导入的每个frameworks的Swift Language Version。最后谨记一定要更新pod!!!!!
# 以下设置 Pods 子 Target 的 Swift 版本为 4.0
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |configuration|
configuration.build_settings['SWIFT_VERSION'] = "4.0"
end
end
end
指定相应的target的Swift版本ok,第一次引入Swift的frameworks大概的解决就这样吧!那里有不对的希望评论交流哦!!
网友评论