ios 16 体验分享

ios 16 beta 3

现阶段 ios 16 内测版本已经出了 3 个版本,而今天要体验的 ios 16 就是最新的版本 —— ios 16 beta 3,在此可以直接通过 xcode beta ios 模拟器的方式直接体验.

安装 xcode beta 版本

通过 xcode 14.0 beta 3 可下载 xcode beta 最新版本.

下载 xip 文件成功后,再解压安装.

  • xcode 14.0 beta 3 (platform: ios 16 beta 3)

  • xcode 13.4.1 (platform: ios 15.5)

PS: Mac 磁盘空间至少留出 30G 方可解压安装 beta 版本,否则会总是出现’磁盘空间不足…’的提示.
Tips: xcode 正式版本至少留出 50G 才可下载解压安装.

体验 ios 16 beta 3 模拟器

  • 步骤

    此步骤是为了照顾那些第一次使用 xcode 的童鞋,这里将演示如何创建 xcode 应用,添加、选择、运行 ios 模拟器的步骤,已经熟知的童鞋可以略过.

    • 创建新项目

    • 选择创建 App 应用

    • 项目以及组织、公司名称

    • WorkSpace、SwiftUI

    • 选择模拟器机型以及 ios 版本

    • 运行模拟器

  • 特性

    现在是’硬菜’,在此将与 ios 15.5对比,来分享体验 ios 16,以此来体现出 ios 16 的特性.而在对比中,为了控制变量,选用机型都为 iPhone 13 Pro.

    • 锁屏界面个性化.

      从 ios 16 开始,可以自定义锁屏界面的时间与日期样式,包含:颜色、背景、字型等,也能在锁屏加上实用小工具以快速查看,例如:天气、日历、智慧家庭等小工具. 此功能特性是 ios 16 最大的亮点,虽然在 xcode ios simulator 中 设置 -> 壁纸 -> 锁屏自定义(Lockscreen Widget) 并不存在,但可以通过锁屏右下角’相机’图标实行配置.

      锁屏的变动主要围绕着个性化进行展开,时间的上下部分都被 Apple 定义为了小组件区域,上部以单行图标配文字的形式进行展现,可以根据自己的需要选择日历、股市、健身、时钟、天气五个原生类目.

      时间的下部区域是模块化的小组件区域,这个区域内的小组件包含了股市、家庭、健身、日历、时钟、提醒事项、天气、电池八个原生类目.和顶部小组件不同的是,这里的组件样式更加丰富,设计感更强,大小选择也更加多样化,可以根据自己的喜好进行随意搭配.值得一提的是,锁屏的小组件 Apple 已将相关权限开放给开发者,如果 App 进行适配,后续将可以在锁屏中看到更多精彩的内容.

      中间时间部分,Apple 不仅调整了占位大小,还提供了阿拉伯数字、阿拉伯印度文、天城文三种文字,每种文字包含了 6 种不同的设计.针对色彩部分,可以在最下方选择背景适配色彩,也可以选择纯白色.






      在 ios 16 中,可以将自己的锁屏以及桌面与专注模式进行关联,在开启不同专注模式的同时,锁屏和桌面会自动切换到自己先前设定的方案中.在不同的环境下你可能需要接受到信息不一样,例如在家需要看智能设备的状态,在工作的时候需要看日程计划,在摄影的时候需要关心日出日落.在小组件不同的同时,也可以换一张不同的壁纸,换个壁纸也换一个心情.当然在 xcode ios simulator 模拟器中现阶段是不能添加新的壁纸,也不存在’专注模式’,进而没有办法体验.



      ios 15.5 中并不能自定义锁屏,也不能自定义添加实用小工具,更不能通过锁屏右下角’相机’图标实行配置.

    • 相册隐私加锁.

      ios 16 在相册中’已隐藏’和’最近删除’选项中,已经支持加锁,增强用户对于相册中图片安全性的保护.





      ios 15.5 在相册中’已隐藏’和’最近删除’选项中,并没有加锁.




    • 主界面底部页面改进.

      ios 16 在界面底部显示 banner 位置的’点’替换为新的 Spotlight 搜索气泡,在桌面直接向下滑动即可打开. 与页面点一样,可以在搜索气泡上向左或向右滑动,以加快滚动浏览其他主屏幕页面. Spotlight 支持搜索系统和应用内的文本、照片、文件等,还能进行单位、货币换算,当 iPhone 接入网络后,可以直接用关键字搜索网页.

      ios 15.5 在界面底部显示 banner 位置的’点’还是原来的功能,向左或向右滑动,以加快滚动浏览其他主屏幕页面.

    • 短信息支持撤回以及二次编辑.

      ios 16 在短信息方面也做了升级,短信息支持撤回以及二次编辑发送.

      ios 15.5 在短信息方面并不支持上述新功能.

    • 键盘方言方面追加了选项.

      ios 16 在键盘方面针对拼音输入追加了四川话的选项.

      ios 15.5 在键盘方面则不存在此选项.

    • 锁屏通知底部显示.

      由于 ios 16 在锁屏个性化上的重大改进(自定义锁屏界面、锁屏中上部设置实用小工具),导致锁屏通知底部显示.




      ios 15.5 锁屏通知仍然是屏幕中上部显示.




    • 健康App 用药提醒

      ios 16 对于有日常药物服用需求的用户,可以在「健康」>「 浏览」>「用药」中设置并管理自己日常药物.设定好药品和服用时间后,ios 可以按时提示你去服用药物,并记录服药记录.此外,还支持一键导出自己的药品清单,方便购买时使用.




      ios 15.5 健康App 则不存在用药提醒这个功能.

    • 兼容设备列表.

      ios 16 已不再支持 iPhone 6S、6SPlus、7、7Plus、SE一代机型.

  • 憾事

    比较遗憾的是,ios 16 有很多做了比较大改动的新功能特性,在 xcode ios simulator 模拟器上面体验不到,下面就来例举一下.

    PS: 以下所有新功能特性,都是经过网上多渠道查询得论,未作实机验证.

    • 锁屏界面个性化.

      新的壁纸类型包含人物、照片、随机、Emoji、天气、天文、颜色八个主题.其中,选择人物主题时,系统会自动检测照片中前景部分,将前景放置在组件和时间的前方,整体融合效果非常好.但在 xcode ios simulator 模拟器上现阶段是不能添加新的壁纸,且不能对壁纸实行个性化设置,如果对图片实行设置壁纸会出现莫名bug: 壁纸并没有设置,且呈为全黑.








      天气和天文这两种动态壁纸,则会根据你的定位和时间,实时变化锁屏的内容.说到这里,就不得不让人联想到这些锁屏和 AOD(全天候显示)的联系.自 iPhone 13 加入了 LTPO 的显示屏,支持显示刷新率在 10Hz 和 120Hz 之间动态调整.此外,近日在解析 ios 16 代码时发现了有关 AOD 相关的字段,显示 iPhone 14 Pro 和 iPhone 14 Pro Max 可能配备该功能.当然在 xcode ios simulator 模拟器上现阶段是不能添加新的壁纸,更无法设置动态壁纸,设置壁纸也会出现莫名bug,也无法通过内置搜索进行查询,进而无法实行设置.

    • 强大的专注模式.

      除了上面所提及的,专注模式与锁屏进行联动,实现锁屏壁纸和小组件的自动切换,它也可以同时定义解锁后显示某一页主屏,并切换 Apple Watch 的表盘,在 xcode ios simulator 模拟器中是不存在 ‘sspal’ 或者 ‘专注模式’ 的,进而也无法实行体验.

      还提供了一项专注模式过滤条件.在这里可以针对日历、信息、浏览器、低电量模式、深色模式进行更加细致的设定.例如,当相应的专注模式开启时,日历会会被筛选,其余的日历无法查看,系统会自动开启等等.这样一来,专注模式的功能变得更加自动化、更加个性化.相信在以后的更新中,专注模式应该可以做到更多的事情.

    • 地图多途经点路线规划.

      新版地图追加一项基础,但是又比较实用的功能多途经点路线规划,用户可以通过路线页面,追加自己需要到达的地点,实现途经点导航.目前该功能已在 11 个国家上线,国内上线时间未知.

      而在xcode ios simulator 模拟器上则是这番场景,GPS导航打开无法规划路线,坐标显示也是错误的.

    • 视频中的实况文本.

      iOS 15 Apple 为我们带来了实况文本的功能,让我们可以找相册、相机、输入的时候快速提取到图像的文字信息,而在 iOS 16 中,Apple 再次加强了实况文本的功能,在任意包含文字的画面暂停视频,即可执行拷贝、翻译、查询、共享等操作,并且适用于照片、快速查看、Safari 和其他应用程序多种场景.




      而在xcode ios simulator 模拟器上则是无法提取任何的内容,视频实况文本功能是没有加上的.

    • 照片支持快速抠图.

      在回顾 iOS 15 推出的看图查询 (Visual Lookup) 功能的时候,Apple 还向我们介绍了借助 CoreML 和神经网络引擎实现的全新的抠图功能.只要在照片上长按,可以快速抠出图片的前景部分,这个功能不仅适用于现实拍摄的照片,虚拟的动画也同样适用.将抠下来的图片按住不放,可以直接切换后台发送到即时通讯应用中.(经测试 iPhone 上 iMessage、Line 等均支持,iOS 微信暂不支持、iPadOS 微信支持).

      而在xcode ios simulator 模拟器上则是无法实行对百度下载的人像抠图功能,长按没有反应,是不存在全新的抠图功能的.

  • 技术特性以及关注点.

    • ios 16 为了帮助使每行的长度在视觉上保持平衡,其中 TextKit,尤其是 TextKit 2,大大改进了换行算法,对于那些想要保持与 ios 15 相同外观以及追求’UI像素完美’的开发者可要注意哦~


      从上面的图中可以看出,换行算法的修改还是很大的,为了始终保持 TextKit 2 两侧的间隙相同/平衡,苹果工程师舍弃了一些外观包袱和’UI像素完美’的标准.

      • 解决方案:

        对于那些势必保持相同外观与追求’UI像素完美’的开发者来说,苹果的开发者论坛给出了可实行的方案,将 TextKit 2 替换成 TextKit 1,可以尝试一下.

        Tips: 转换为 TextKit 1 方法: transform TextKit 1

    • 调用绘制图形 OpenGL API 崩溃.

      根据苹果开发者论坛 OpenGL crashes (iOS 16),当在 ios 16 beta simulator 模拟器中调用 presentRenderBuffer 时,OpenGL 崩溃,在 iOS 15 或更低版本运行正常.

      • 解决方案:

        根据苹果的开发者论坛中某开发者所给的回复,已经在 ios 16 beta 3 中进行了修复.也就证明了 beta 3 之前的 ios 16 beta 版本都有调用 OpenGL presentRenderBuffer 以及 EXC_BAD_ACCESS 会出现崩溃的情况,开发小伙伴们注意了哦~

        Tips: 此回复并没有得到确认,可能还是需要实践验证一下是否可行.

    • Lockscreen Widget(锁屏小工具) 支持 ios 15.

      有没有一种可能,在现有的 Widget Bundle 中添加 Lock Screen Widget 并仍然支持 ios 15,怎么做可以实现呢?
      答案是: 根据苹果开发者论坛和 stackoverflow 可知,下续代码应该是有效的,但也亟需实践验证可行性.

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
       struct SomeWidgetBundle: WidgetBundle {
      @WidgetBundleBuilder
      var body: some Widget {
      AlwaysAvailableWidget()
      LockScreenWidget()
      }
      }

      struct LockScreenWidget: Widget {
      var body: some WidgetConfiguration {
      if #available(iOSApplicationExtension 16.0, *) {
      return StaticConfiguration(
      kind: "some.kind",
      provider: LockScreenWidgetTimelineProvider()
      ) { provider in
      Text("Some view")
      }
      .configurationDisplayName("Some display name")
      .description("Some description")
      .supportedFamilies([.accessoryCircular])
      } else {
      return EmptyWidgetConfiguration()
      }
      }
      }
    • 真机相机在 ios 16 beta 版本中黑屏.

      真机升级至 ios 16.0 beta 版本后,相机在任何应用程序中都不起作用,呈现黑屏状态.具体在 ios 16 beta simulator 模拟器中是测不出来的,敬请开发小伙伴们注意.

      • 解决方案:

        根据苹果开发者论坛可知,现阶段还不存在解决方案,还持续存在这种情况.

总结

总得来说,ios 16 对于用户的安全性、便捷性、个性化和使用体感做的更加细致入微了,苹果在逐步将 iPhone 做的更加向纵深方向发展,而在横向创新领域,则并没有看到任何的扩展化,可能苹果是想现阶段在此 iPhone 的现功能基础上进行维护和深耕吧.