iOS 16 版本适配
iOS 16 真机调试时需要在设备的设置 —> 隐私与安全 —> 开发者模式 中打开开发者模式。
隐私权限增强,如通过 UIDevice 获取设备名称时,无法获取用户的信息,只能获取设备对应的名称([UIDevice currentDevice].name返回iPhone,不再返回用户自定义的名字)
横竖屏,Xcode13.1通过设置[UIDevice currentDevice] setValue:@(orientation) forKey:@"orientation"]和[UIViewControllerattemptRotationToDeviceOrientation]];
;iOS16 beta系统手机不会收到UIDeviceOrientationDidChangeNotification通知,需要在VC中viewWillTransitionToSize中处理横竖屏展示
补充:iOS16开始选转屏幕需要使用UIWindowScene的相关API。
不支持通过 setValue:forKey: 在UIDevice上设置方向,也不再有效。需要开发者检查是否有使用此方法,可能后续版本将不能使用(未复现,可能Xcode14生效)。
App Tracking Transparency即使允许了跟踪,也获取不到 IDFA(已验证)。
Apple ID Authentication可能无法使用 Apple ID 认证,临时解决方法,重启设备(未复现)。
未在设置中打开『开发者模式』时,TestFlight可以正常安装测试包,但是在打开App时会提示『需要启用开发者模式』;企业包不影响。
iOS 14 App读取剪贴板时,顶部会提示内容:App正在使用剪切板;在 iOS 16App 要读取剪贴板时,会被明确询问用户是否要允许它,目前没有永久授予或永久拒绝的配置
,是系统层控制,也不需要开发者声明(验证如评论图)。
代码按如下方式写时,在iOS16上会导致状态栏消失一会儿(beta3上已修复)
10、UITableView调用reloadData时,cell的复用也会发生变化,如果有异步操作(比如网络请求)过程中,调用了reloadData,此时捕捉到的cell其实已经不再是之前的cell了,那么和cell相关的操作就都有问题
iOS16.0 第三方输入法键盘在频繁弹出、收起时,会出现over-release导致闪退,如果遇到控制器跳页,并且键盘频繁弹出、收起的情况,建议拉长键盘弹出间隔,比如把键盘弹出放到viewDidAppear中,不会彻底解决,但会降低出现闪退概率
12、使用xcode14 debug的时候启动较慢,可以删除该目录下所有文件“~/Library/Developer/Xcode/iOS DeviceSupport/”,在xcode中选择当前手机并unpair the device,拔出手机,重启xcode,插上手机,信任就恢复正常
更多参考:
iOS16 适配指南(基于Xcode 14 Beta1)iOS16 适配指南 - 简书
iOS & iPadOS 16 Beta Release Notes | Apple Developer Documentation https://developer.apple.com/documentation/ios-ipados-release-notes/ios-ipados-16-release-notes
WWDC22 开发者需要关注的重点内容 https://chowdera.com/2022/170/202206191911372968.html
iOS16 Xcode14 适配
来源地址:https://blog.csdn.net/ZhaiAlan/article/details/131457534
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341