Search code examples
iosiphoneipadios13

What effect do iOS 13 scenes have on iPhone?


Situation: I have an iPhone-only app, no iPad or macOS support.

I'm wondering whether it makes a difference whether I adopt iOS 13 scene-based life cycle using UISceneDelegate et al. on iPhone or not.

Question: Can I/the user do anything with it that I couldn't with the normal app-based life cycle? Am I missing out on something if I don't adopt this API?


Solution

  • iOS 13 on an iPhone makes no practical use of scenes. You can't create multiple scenes like you can with iPadOS 13 on an iPad. So functionally, the single scene on an iPhone is effectively the same as opting out of scenes and using only the old UIApplicationDelegate functionality.

    For an iPhone-only app that needs to support iOS 13 as well as iOS 12, it would be easier to opt out of scenes. Then your UIApplicationDelegate code will work fine for both versions of iOS. If you adopted the scene API in iOS 13, you would still need to implement the UIApplicationDelegate API for iOS 12.

    If your iPhone-only app doesn't need to support iOS 12, then you should probably use the scene API since it is the newer API and if you end up adding proper iPad support to your app, you are already on your way by using the needed scene API.