【发布时间】:2019-09-19 05:56:16
【问题描述】:
情况:我有一个仅限 iPhone 的应用,不支持 iPad 或 macOS。
我想知道是否采用iOS 13 scene-based life cycle 使用UISceneDelegate 等是否会有所不同。在 iPhone 上与否。
问题:我/用户可以用它做一些我在正常的基于应用的生命周期中做不到的事情吗?如果我不采用这个 API,我会错过什么吗?
【问题讨论】:
情况:我有一个仅限 iPhone 的应用,不支持 iPad 或 macOS。
我想知道是否采用iOS 13 scene-based life cycle 使用UISceneDelegate 等是否会有所不同。在 iPhone 上与否。
问题:我/用户可以用它做一些我在正常的基于应用的生命周期中做不到的事情吗?如果我不采用这个 API,我会错过什么吗?
【问题讨论】:
iPhone 上的 iOS 13 没有实际使用场景。您无法像在 iPad 上使用 iPadOS 13 那样创建多个场景。所以在功能上,iPhone 上的单一场景实际上与选择退出场景并仅使用旧的 UIApplicationDelegate 功能相同。
对于需要支持 iOS 13 和 iOS 12 的仅限 iPhone 的应用程序,选择退出场景会更容易。然后您的 UIApplicationDelegate 代码将适用于两个版本的 iOS。如果您在 iOS 13 中采用了场景 API,您仍然需要为 iOS 12 实现 UIApplicationDelegate API。
如果您的仅限 iPhone 的应用不需要支持 iOS 12,那么您可能应该使用场景 API,因为它是较新的 API,并且如果您最终为您的应用添加了适当的 iPad 支持,那么您已经在通过使用所需的场景 API 的方式。
【讨论】: