blob: 26425e514888f35f85d276037386f6e5d0e26bf3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
import CloudKit
import UIKit
final class DomainDigAppDelegate: NSObject, UIApplicationDelegate {
func application(
_: UIApplication,
configurationForConnecting connectingSceneSession: UISceneSession,
options _: UIScene.ConnectionOptions
) -> UISceneConfiguration {
let configuration = UISceneConfiguration(name: nil, sessionRole: connectingSceneSession.role)
configuration.delegateClass = DomainDigSceneDelegate.self
return configuration
}
}
final class DomainDigSceneDelegate: NSObject, UIWindowSceneDelegate {
func scene(_: UIScene, willConnectTo _: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let metadata = connectionOptions.cloudKitShareMetadata else { return }
accept(metadata: metadata)
}
func windowScene(_: UIWindowScene, userDidAcceptCloudKitShareWith cloudKitShareMetadata: CKShare.Metadata) {
accept(metadata: cloudKitShareMetadata)
}
private func accept(metadata: CKShare.Metadata) {
Task {
try? await CloudSyncService.shared.acceptShare(metadata: metadata)
}
}
}
|