一、前言
最近公司的App要做兼容iOS13的工作,于是收集整理了一下iOS13与开发相关的新特性,以及在做兼容过程中遇到的一些问题;记录一下方便自己日后查找使用。
二、iOS13新特性
1、App Store的应用程序将会提供新的压缩模式,应用体积和更新体积将会变得更小,应用体积减少60%,这意味着更快的应用更新速度。
2、允许通过蜂窝数据下载大型应用。
3、允许直接将网页保存为PDF并通过邮件共享。
4、原生支持Zip文件的创建以及解压缩。
5、文件应用提供了下载文件夹,其中会存放使用Safari以及邮件应用下载的附件。
6、网站或者应用登陆时提供“使用Apple登陆”的选项,此时用户会默认使用Apple ID登陆,并会提供两步验证的安全保障,Apple登陆支持Android以及Windows平台。
7、在用户使用Safari创建新网站账号时,Safari会自动检测用户的密码强度,并提出强度建议。
8、iOS 13原生应用启动速度提升100%。
9、iPhone X、iPhone XS、iPhone XS Max以及iPhone XR的Face ID解锁速度提高 30% 。
10、在应用询问位置权限时,提供“仅一次”的选项。
三、iOS13问题 (iOS Beta版)
在iOS 13之前,我们模态展示的视图默认是全屏的,而在iOS13中,默认的样式变成了类iPhone上safari的分页样式(上下分层) 如下图:
在使用 presentViewController 来跳转视图时系统提供了两个参数来简化跳转的设置,modalTransitionStyle 和modalPresentationStyle前者为转场过渡的类型,后者为展示的样式,系统为两者都提供了多种可选样式。
modalPresentationStyle在iOS13前该值默认为UIModalPresentationFullScreen;而在 iOS13 中变为了UIModalPresentationAutomatic,因此会导致如上问题。
解决方法:在presentViewController的时候将控制器modalPresentationStyle设置为UIModalPresentationFullScreen 即
vc.modalPresentationStyle = UIModalPresentationFullScreen;
目前就整理到这些问题,后续再遇到问题再补充。
网友评论