61 lines
2.0 KiB
Swift
61 lines
2.0 KiB
Swift
//
|
|
// Copyright Amazon.com Inc. or its affiliates.
|
|
// All Rights Reserved.
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
import os.log
|
|
import UIKit
|
|
import AppSyncRealTimeClient
|
|
|
|
@UIApplicationMain
|
|
class AppDelegate: UIResponder, UIApplicationDelegate {
|
|
|
|
func application(
|
|
_ application: UIApplication,
|
|
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
|
|
) -> Bool {
|
|
// Override point for customization after application launch.
|
|
|
|
// Initialize the subscription, don't do anything in particular with it
|
|
_ = AppSyncRTCProvider.default
|
|
|
|
return true
|
|
}
|
|
|
|
// MARK: UISceneSession Lifecycle
|
|
|
|
func application(
|
|
_ application: UIApplication,
|
|
configurationForConnecting connectingSceneSession: UISceneSession,
|
|
options: UIScene.ConnectionOptions
|
|
) -> UISceneConfiguration {
|
|
// Called when a new scene session is being created.
|
|
// Use this method to select a configuration to create the new scene with.
|
|
return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role)
|
|
}
|
|
|
|
func application(
|
|
_ application: UIApplication,
|
|
didDiscardSceneSessions sceneSessions: Set<UISceneSession>
|
|
) {
|
|
// Called when the user discards a scene session.
|
|
// If any sessions were discarded while the application was not running, this will
|
|
// be called shortly after application:didFinishLaunchingWithOptions.
|
|
// Use this method to release any resources that were specific to the discarded
|
|
// scenes, as they will not return.
|
|
}
|
|
|
|
func applicationWillResignActive(_ application: UIApplication) {
|
|
OSLog.subscription.log("\(#function), unsubscribing", log: .subscription)
|
|
AppSyncRTCProvider.default.unsubscribe()
|
|
}
|
|
|
|
func applicationDidEnterBackground(_ application: UIApplication) {
|
|
OSLog.subscription.log("\(#function), unsubscribing", log: .subscription)
|
|
AppSyncRTCProvider.default.unsubscribe()
|
|
}
|
|
|
|
}
|