Life Cycle
Xcode12以降、プロジェクト作成時に「Life Cycle」という項目の選択が必要になりました。
UIKit App Delegate
OSによって使用するフレームワークが異なる。
- UIKit App Delegate → iOS/iPadOS/tvOS
- AppKit App Delegate → macOS
- WatchKit App Delegate → watchOS
SwiftUI App
同じコードで複数のOSに対応が可能。
- iOS/iPadOS 14.0〜
- macOS 11.0〜
- tvOS 14.0〜
- watchOS 7.0〜
WKExtensionDelegateAdaptor
@UIApplicationDelegateAdaptorを使用して、AppDelegateを利用するという記事は多くあったのですが、
watchOS側の記事はほとんど見つからなかったので、誰かの役に立てばと思います。
import SwiftUI
@main
struct watchosApp: App {
@WKExtensionDelegateAdaptor(ExtensionDelegate.self) var delegate
var body: some Scene {
WindowGroup {
NavigationView {
ContentView()
}
}
}
}
class ExtensionDelegate: NSObject, WKExtensionDelegate {
// function
}
上記コードのようにWKEtensionDelegateAdaptorを追加すると、WKExtensionDelegateを利用できるようになります。
IT/Webエンジニアとして勤務しています。
猫が大好きです。このところ毎日愛猫に枕を取られ続けています。
最近のコメント