diff --git a/mobile/ios/Runner/Core/NetworkApiImpl.swift b/mobile/ios/Runner/Core/NetworkApiImpl.swift index 3c4be8e718..acd94f38c0 100644 --- a/mobile/ios/Runner/Core/NetworkApiImpl.swift +++ b/mobile/ios/Runner/Core/NetworkApiImpl.swift @@ -88,8 +88,8 @@ class NetworkApiImpl: NetworkApi { } } - if headers != UserDefaults.group.dictionary(forKey: HEADERS_KEY) as? [String: String] { - UserDefaults.group.set(headers, forKey: HEADERS_KEY) + if headers != UserDefaults.standard.dictionary(forKey: HEADERS_KEY) as? [String: String] { + UserDefaults.standard.set(headers, forKey: HEADERS_KEY) URLSessionManager.shared.recreateSession() } } diff --git a/mobile/ios/Runner/Core/URLSessionManager.swift b/mobile/ios/Runner/Core/URLSessionManager.swift index 9eb93f9ff9..f0d76ea380 100644 --- a/mobile/ios/Runner/Core/URLSessionManager.swift +++ b/mobile/ios/Runner/Core/URLSessionManager.swift @@ -4,7 +4,6 @@ import native_video_player let CLIENT_CERT_LABEL = "app.alextran.immich.client_identity" let HEADERS_KEY = "immich.request_headers" let SERVER_URLS_KEY = "immich.server_urls" -let APP_GROUP = "group.app.immich.share" let COOKIE_EXPIRY_DAYS: TimeInterval = 400 enum AuthCookie: CaseIterable { @@ -28,10 +27,6 @@ enum AuthCookie: CaseIterable { static let names: Set = Set(allCases.map(\.name)) } -extension UserDefaults { - static let group = UserDefaults(suiteName: APP_GROUP)! -} - /// Manages a shared URLSession with SSL configuration support. /// Old sessions are kept alive by Dart's FFI retain until all isolates release them. class URLSessionManager: NSObject { @@ -55,7 +50,7 @@ class URLSessionManager: NSObject { let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String ?? "unknown" return "Immich_iOS_\(version)" }() - static let cookieStorage = HTTPCookieStorage.sharedCookieStorage(forGroupContainerIdentifier: APP_GROUP) + static let cookieStorage = HTTPCookieStorage.shared private static var serverUrls: [String] = [] private static var isSyncing = false @@ -67,7 +62,7 @@ class URLSessionManager: NSObject { delegate = URLSessionManagerDelegate() session = Self.buildSession(delegate: delegate) super.init() - Self.serverUrls = UserDefaults.group.stringArray(forKey: SERVER_URLS_KEY) ?? [] + Self.serverUrls = UserDefaults.standard.stringArray(forKey: SERVER_URLS_KEY) ?? [] NotificationCenter.default.addObserver( Self.self, selector: #selector(Self.cookiesDidChange), @@ -83,7 +78,7 @@ class URLSessionManager: NSObject { static func setServerUrls(_ urls: [String]) { guard urls != serverUrls else { return } serverUrls = urls - UserDefaults.group.set(urls, forKey: SERVER_URLS_KEY) + UserDefaults.standard.set(urls, forKey: SERVER_URLS_KEY) syncAuthCookies() } @@ -151,7 +146,7 @@ class URLSessionManager: NSObject { config.httpMaximumConnectionsPerHost = 64 config.timeoutIntervalForRequest = 60 - var headers = UserDefaults.group.dictionary(forKey: HEADERS_KEY) as? [String: String] ?? [:] + var headers = UserDefaults.standard.dictionary(forKey: HEADERS_KEY) as? [String: String] ?? [:] headers["User-Agent"] = headers["User-Agent"] ?? userAgent config.httpAdditionalHeaders = headers