纯Appdelegate控制的老项目适配Xcode27(iOS27SDK)

1.Appdelegate控制窗口不再被支持(UIKit的情况下),需要修改成UIScene

老一点的UIKit打底的Swift或者OC项目基本上都是通过Appdelegate来管理窗口的。但是在iOS27之后,不再支持纯Appdelegate,如果是UIKit项目,则必须要求引入UIScene,也就是SceneDelegate。

对于老项目而言,只要把Appdelegate中管理窗口的部分,全部移植到SceneDelegate里,也就是Appdelegate只做一些初始化或者第三方库的配置工作。然后再在项目中用到Appdelegate(里的窗口)的部分,全部替换成SceneDelegate,就可以解决问题。

注意一点,如果修改之后能正常编译,但黑屏;这代表需要在添加完成SceneDelegate之后,必须在Info里添加SceneDelegate相关的字段,否则系统无法识别你正在用它管理窗口。

如果是一开始就用UIScene管理窗口,具体可以看用UIScene管理窗口生命周期那一期。https://blog.csdn.net/qq_27328363/article/details/167039113?spm=1001.2014.3001.5501

2. Xcode27只支持iOS15.0版本以上,需要在Minimum Deployments处修改最低构建版本为至少15.0;

大概率跑起来会发现第三方库支持的版本也过低,不被Xcode27支持,所以还需要修改第三方库的最低版本(如果是SPM直接Update to Latest就行了,Cocoapods安装的第三方库,则需要手动修改Podfile)

platform :ios, '16.0'

相关推荐
2501_9159184111 小时前
iOS 推送通知怎么实现,从 APNs p8 密钥到 iOS 真机收到第一条推送
vscode·ios·objective-c·个人开发·swift·敏捷流程
周小董1 天前
[1379]mac安装nvm
macos
bossjuemfc1 天前
不记得文件名时,Mac 上的搜索还能怎么做?
macos
2501_915909061 天前
Windows 打开 Xcode 工程,编译调试 Xcode 项目并和 Mac 同事协作
ide·windows·vscode·macos·ios·个人开发·xcode
请为小H留灯2 天前
Mac 常用操作与维护技巧
macos·电脑·清理电脑·常用技巧
hantmac2 天前
不记得文件名时,Mac 上的搜索还能怎么做?
人工智能·macos
这是谁的博客?2 天前
AI 加速器 RTL 数字系统设计深度解析:从 MAC 阵列 Verilog 实现到时序收敛与时钟功耗的芯片落地全链路
人工智能·macos·ai·verilog·数字ic设计·ai芯片·rtl
slacker-kian2 天前
M 系列 Mac 清除顽固的 CorpLink
macos·corplink·m系列
2501_916007472 天前
Windows OpenSSL 生成 iOS 证书,制作 p12 与描述文件,KXBuild 签名实操
windows·vscode·ios·objective-c·个人开发·swift·敏捷流程
kk_net88992 天前
FSNotes:macOS 和 iOS 上的开源笔记管理器
笔记·其他·macos·ios