前言
最近手欠点了更新Xcode,造成了几个奇葩问题,又得给Apple擦屁股,下面是整理出来肯定会出现的问题,一定要避坑。。。。 一定要对自己手下留情呀~
缺失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进行打包,到最后一定会报错,大致的信息如下:
报错内容:
前几天手欠将Xcode更新至14.3了,接连冒出了好几个兼容性问题,整的一脸懵,譬如下面这个报错:
Showing Recent Messages rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/97f6331a-ba75-11ed-a4bc-863efbbaf80d/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9]
解决方法:
索引Xcode -> Pods -> Targets Support Files -> Pods-工程名 -> Pods-项目名-frameworks.sh
搜索找到:source="$(readlink "${source}")"
,找到后将其替换为source="$(readlink -f "${source}")"
,然后重新编译打包一路畅通。(附下图)
Xcode 14.3: 上架AppStore后-iOS14以下版本无法正常使用(案例:iOS13.3、13.6)
很多人都反馈在Xcode14.3打包上架后,在iOS13.6的系统下安装App后,无法正常启动,因为身边手机都是iOS14以上的,所以找到相同机型来验证并无此问题,由此判断肯定是Apple又给挖坑啦,同样在网上也找到了很多说Xcode14.3有问题的帖子,千万慎重。。。
此博主也阐述了这个问题,大家可以做为参考
根治痔疮
我的最终处理方法就是退回Xcode14.2版本,重新打包再次提审