項(xiàng)目中在升級(jí)Xcode13的時(shí)候,遇到在debug模式下沒(méi)問(wèn)題,release模式下遇到如下錯(cuò)誤

iShot2021-09-27 21.37.12.png
因?yàn)轫?xiàng)目需要適配iOS10,并且項(xiàng)目沒(méi)有使用到swiftui,所以就使用ruby腳本將報(bào)錯(cuò)相關(guān)代碼移除掉
在Podfile文件中添加以下鉤子函數(shù),然后運(yùn)行pod install
platform :ios, '10.0'
use_modular_headers!
inhibit_all_warnings!
...
pre_install do |installer|
remove_swiftui()
end
def remove_swiftui
# 解決 xcode13 Release模式下SwiftUI報(bào)錯(cuò)問(wèn)題
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