升级Xcode12.3报错(Building for iOS Simulator, but the linked and embedded framework ‘***‘ was built ...)
今天计划将已有的项目由Xcode12.0.1升级到Xcode12.3,本以为只会报一些Swift编译的framework的Swift版本不兼容的错误,没想到结果出乎意料。
1. 项目支持的最低系统版本有所变更
Mobile项目iOS版本要求iOS12,如果是TV项目,则要求最低tvOS12. 对于一些iOS12或者tvOS12以下的API基本上就废除了。
2. Xcode12.3报错
错误提示大概为:“Building for iOS Simulator, but the linked and embedded framework '***' was built for iOS + tvOS Simulator”。
这种错误提示还是第一次见,外网搜索了一番,最终通过修改项目配置里面的Validate Workspace为Yes后,重新编译则报错消失。
但是编译通过后,我又改回了NO,再编译时,也不会报错了,很神奇。
随后找了一下Validate Workspace的配置说明:
If enabled, perform validation checks on the workspace configuration as part of the build process.
如果开启了(设置为Yes),那么在构建版本的过程中将对工作区配置进行验证检查。
文章链接为:https://xcodebuildsettings.com/,这里还有很多配置说明,可以查阅。
3. Swift版本的Framework引入报错
这个问题在我们的项目里是老生常谈了,项目里面引入了公司自己的用Swift写的Framework,每次Xcode升级,都会报Swift版本不兼容的错误,目前的解决方式就是用最新的Xcode重新打包Framework。
如果哪位朋友有更好的解决方法,还请告知,谢谢!
本篇文章出自https://blog.csdn.net/guoyongming925的博客,如需转载,请标明出处。
转载:https://blog.csdn.net/guoyongming925/article/details/111320840