前言
最近项目挺忙的,没太多时间来更新文章,但是有关于Xcode14.3的问题,我不得不拿出来说一下,也就算是协助到大家吧。
缺失libarclite_iphoneos.a
晋级完Xcode14.3之后,编译项目,或许会出现下面的报错:
File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a
原因是libarclite_iphoneos文件缺失。
有两种解决方案:
- 有的三方库支持版别过低,在podfile文件中指定版别
post_install do |installer|
installer.generated_projects.each do |project|
project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
end
end
end
end
- 因为需求指定版别到有特殊要求,能够考虑从其他版别的Xcode复制
libarclite_iphoneos.a
放到对应的目录下即可:
open /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/
如果你找不到libarclite_iphoneos.a
文件,这个git资源能够协助到你:github.com/kamyarelyas…
打包反常
不管是通过Xcode的Archive还是通过fastlane进行打包,到最后一定会报错,大致的信息如下:
rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots
Pods文件下面,找到Pods-工程名-frameworks.sh
,将这段代码进行修改,注意,后续pod install
之后,都要再进行修改。
source="$(readlink "${source}")"
改为:
source="$(readlink -f "${source}")"
Xcode 14.3: App built is not able to open on iOS 13.6
很多人都反应在Xcode14.3打包上架后,在iOS13.6的系统下装置App后,有反常,因为目前我手上的测试机都是是iOS14以上的,所以无法精确复现这个问题,不过考虑这么多人都在说这事,我觉得应该是真的。
大家需求注意一下。
能够考虑回退到Xcode14.2
防止主动晋级到Xcode14.3
很多朋友都是Xcode主动晋级到14.3版别的,为了防止类似的事情产生,我们最好的办法就是封闭App Store的主动晋级,观望一段时间后再做决议。
参考文档
Missing file libarclite_iphoneos.a (Xcode 14.3)
Xcode14.3问题记录
developer.apple.com/forums/thre…
developer.apple.com/forums/thre…
developer.apple.com/forums/thre…