問題場景:使用xcode13.0版本開發(fā)項(xiàng)目先馆,模擬器和真機(jī)在debug模式下可成功運(yùn)行。然而在realease下編譯和Archive遇到以下錯誤:
解決方法:
1绪抛、由于項(xiàng)目未使用到SwiftUI,可在Podfile文件中添加以下代碼,將SwiftUI和報錯相關(guān)代碼移除紫新,然后運(yùn)行pod install即可。
2李剖、添加的代碼為platform :ios, "10.0"到use_frameworks!之間
platform :ios, "10.0"
use_modular_headers!
inhibit_all_warnings!
pre_install do |installer|
remove_swiftui()
end
def remove_swiftui
# 解決 xcode13 Release模式下SwiftUI報錯問題
system("rm -rf ./Pods/Kingfisher/Sources/SwiftUI")
code_file = "./Pods/Kingfisher/Sources/General/KFOptionsSetter.swift"
code_text = File.read(code_file)
code_text.gsub!(/#if canImport\(SwiftUI\) \&\& canImport\(Combine\)(.|\n)+#endif/,'')
system("rm -rf " + code_file)
aFile = File.new(code_file, 'w+')
aFile.syswrite(code_text)
aFile.close()
end
use_frameworks!
target 'SwiftTest' do
pod 'HandyJSON'
pod 'Kingfisher'
end