My app crashes on startup after I updated my phone to iOS 27.
See the AI-generated report below.
Problem
After updating to Xcode 27 (27A266a), every dx build --platform ios app is killed by UIKit immediately at launch, on both the simulator and a physical device. No Rust code runs; the process is terminated with SIGTERM within a second of launch. The device log shows:
Application failed to launch: UIScene life cycle is required for apps built with this SDK.
See "Transitioning to the UIKit scene-based life cycle" in the UIKit documentation for more
information on migration.
(logged from UIApplication_RuntimeIssues.m:106)
The iOS 27 SDK requires apps linked against it to adopt the UIScene life cycle. Apps that only implement the UIApplicationDelegate window life cycle are refused.
Why it affects Dioxus
dioxus-desktop 0.7.9 (which dioxus-mobile uses) pins tao = "0.34". tao 0.34.x has no UIScene support in its iOS backend at all: there is no scene delegate and no handling of UIApplicationSceneManifest, so there is nothing to declare in Info.plist that would satisfy the SDK.
Upstream state in tao:
So a working fix for Dioxus needs (a) a bump to tao >= 0.37 in dioxus-desktop, and (b) dx emitting a UIApplicationSceneManifest in the generated iOS Info.plist (or docs telling users to add one under [ios.plist] in Dioxus.toml) pointing at tao's scene delegate class.
Steps to reproduce
- Install Xcode 27 and select it (
xcode-select).
dx new any project, or use an existing Dioxus 0.7 mobile app.
dx build --platform ios (debug or release, simulator or device).
- Launch the app. It terminates immediately.
xcrun simctl spawn booted log show --last 2m --predicate 'process == "<app>"' shows the message above.
Expected behavior
The app launches as it did when built with Xcode 26 / the iOS 26 SDK.
Workaround
Build with the iOS 26 SDK by keeping Xcode 26 installed and pointing DEVELOPER_DIR at it for dx build. The requirement is keyed on the SDK the app links against, not on the iOS version of the device.
Environment
- dioxus / dioxus-cli: 0.7.9 (3e43ffa)
- dioxus-desktop: 0.7.9, tao: 0.34.8, wry: 0.53.5
- rustc: 1.96.0
- macOS 26.6.2, Xcode 27.0 (27A266a)
- Reproduced on: iPhone 17 simulator (iOS 27.0) and a physical iPhone 13 Pro
My app crashes on startup after I updated my phone to iOS 27.
See the AI-generated report below.
Problem
After updating to Xcode 27 (27A266a), every
dx build --platform iosapp is killed by UIKit immediately at launch, on both the simulator and a physical device. No Rust code runs; the process is terminated with SIGTERM within a second of launch. The device log shows:(logged from
UIApplication_RuntimeIssues.m:106)The iOS 27 SDK requires apps linked against it to adopt the
UIScenelife cycle. Apps that only implement theUIApplicationDelegatewindow life cycle are refused.Why it affects Dioxus
dioxus-desktop0.7.9 (whichdioxus-mobileuses) pinstao = "0.34". tao 0.34.x has noUIScenesupport in its iOS backend at all: there is no scene delegate and no handling ofUIApplicationSceneManifest, so there is nothing to declare inInfo.plistthat would satisfy the SDK.Upstream state in tao:
TaoSceneDelegate,application:configurationForConnectingSceneSession:options:).autorelease_ptrfix), released in tao 0.37.0.UIApplicationSupportsMultipleScenes = falseare still not handled correctly: [bug] iOS: a scene manifest with UIApplicationSupportsMultipleScenes=false enables the scene lifecycle but registers no scene delegate tauri-apps/tao#1308.So a working fix for Dioxus needs (a) a bump to tao >= 0.37 in
dioxus-desktop, and (b)dxemitting aUIApplicationSceneManifestin the generated iOSInfo.plist(or docs telling users to add one under[ios.plist]inDioxus.toml) pointing at tao's scene delegate class.Steps to reproduce
xcode-select).dx newany project, or use an existing Dioxus 0.7 mobile app.dx build --platform ios(debug or release, simulator or device).xcrun simctl spawn booted log show --last 2m --predicate 'process == "<app>"'shows the message above.Expected behavior
The app launches as it did when built with Xcode 26 / the iOS 26 SDK.
Workaround
Build with the iOS 26 SDK by keeping Xcode 26 installed and pointing
DEVELOPER_DIRat it fordx build. The requirement is keyed on the SDK the app links against, not on the iOS version of the device.Environment