1、iOS 16 真机调试时需要在设备的设置 —> 隐私与安全 —> 开发者模式 中打开开发者模式。
2、隐私权限增强,如通过 UIDevice 获取设备名称时,无法获取用户的信息,只能获取设备对应的名称([UIDevice currentDevice].name返回iPhone,不再返回用户自定义的名字)
3、横竖屏,Xcode13.1通过设置[UIDevice currentDevice] setValue:@(orientation) forKey:@"orientation"]和[UIViewControllerattemptRotationToDeviceOrientation]];
;iOS16 beta系统手机不会收到UIDeviceOrientationDidChangeNotification通知,需要在VC中viewWillTransitionToSize中处理横竖屏展示
补充:iOS16开始选转屏幕需要使用UIWindowScene的相关API。
4、不支持通过 setValue:forKey: 在UIDevice上设置方向,也不再有效。需要开发者检查是否有使用此方法,可能后续版本将不能使用(未复现,可能Xcode14生效)。
5、App Tracking Transparency即使允许了跟踪,也获取不到 IDFA(已验证)。
6、Apple ID Authentication可能无法使用 Apple ID 认证,临时解决方法,重启设备(未复现)。
7、未在设置中打开『开发者模式』时,TestFlight可以正常安装测试包,但是在打开App时会提示『需要启用开发者模式』;企业包不影响。
8、iOS 14 App读取剪贴板时,顶部会提示内容:App正在使用剪切板;在 iOS 16App 要读取剪贴板时,会被明确询问用户是否要允许它,目前没有永久授予或永久拒绝的配置
,是系统层控制,也不需要开发者声明(验证如评论图)。
9、代码按如下方式写时,在iOS16上会导致状态栏消失一会儿(beta3上已修复)
10、UITableView调用reloadData时,cell的复用也会发生变化,如果有异步操作(比如网络请求)过程中,调用了reloadData,此时捕捉到的cell其实已经不再是之前的cell了,那么和cell相关的操作就都有问题
11、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文章来源:https://www.toymoban.com/news/detail-517693.html
iOS16 Xcode14 适配
iOS16 Xcode14 适配 - 掘金文章来源地址https://www.toymoban.com/news/detail-517693.html
到了这里,关于iOS 16 版本适配的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!