Ideal Reality

興味の赴くままに

[SwiftUI]SwiftUI App Life Cycleに変更したアプリが、アップデートした端末で起動できない時の対処法

UIKit App Delegateで作られていたアプリをSwiftUI App Life Cycleに変更すると、新規にインストールした端末では正常に起動するのに、UIKit App Delegateのバージョンからアップデートした端末だと起動しない問題が起こった。

このアプリはマルチウインドウに対応していたので、Info.plistでScene Configurationを指定していたのだが、SwiftUI Appになったら不要だろうと思って消したのがどうもいけなかったらしい。

とはいえ、SwiftUI AppではScene Delegateを使わないし、Scene Configurationもいらないので、いろいろ考えて

SwiftUI Appにした時に裏で使われてるっぽいSwiftUI.AppSceneDelegateをDelegate Class Nameに入れてScene Configurationを必要最低限残すことで、アップデートした端末でも無事起動させることができました。

この問題はiOS 14.0 ~ 14.4では確認していて、今後修正されると思いますが、一応同じ内容で困った人がいたなら参考までに。

スポンサーリンク

コメント

投稿されたコメントはありません

名前

メールアドレス(任意)

コメント

関連する投稿

[iOS, Swift]で画面回転時のアニメーションを無効化する

[SwiftUI]EnvironmentObjectをウィンドウごとに別々のインスタンスにしたい

SwiftのDecimal(string:)がどれだけ使えるか試してみた

[SwiftUI]List内のButtonやLinkのデザインをNavigationLinkっぽくする方法

iOS14のUIDatePickerのデザインをカスタマイズする

iOS13でViewController上部の隙間をなくす