Files
lockdown-iOS-mirror/LockdowniOS/SplashscreenViewController.swift
Alexander Parshakov 2bc6adf847 Release 1.6.1
2023-01-10 21:17:38 +05:00

52 lines
1.7 KiB
Swift

//
// SplashscreenViewController.swift
// Lockdown
//
// Created by Alexander Parshakov on 9/7/22
// Copyright © 2022 Confirmed Inc. All rights reserved.
//
import AppTrackingTransparency
import UIKit
final class SplashscreenViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad()
BaseUserService.shared.updateUserSubscription { [weak self] _ in
DispatchQueue.main.async {
self?.dismiss()
}
}
}
private func dismiss() {
dismiss(animated: false) {
let keyWindow = UIApplication.shared.windows.first(where: { $0.isKeyWindow })
// Do not show onboarding if user has seen the previous onboarding or has already seen this new one
if OneTimeActions.hasSeen(.welcomeScreen) == false,
OneTimeActions.hasSeen(.newFancyOnboarding) == false {
let onboardingViewController = OnboardingViewController()
let navigation = UINavigationController(rootViewController: onboardingViewController)
keyWindow?.rootViewController = navigation
} else {
keyWindow?.rootViewController = UIStoryboard.main.instantiateViewController(withIdentifier: "MainTabBarController")
}
keyWindow?.makeKeyAndVisible()
}
}
private func askForPermissionToTrack(completion: @escaping () -> Void) {
guard #available(iOS 14, *) else {
completion()
return
}
ATTrackingManager.requestTrackingAuthorization(completionHandler: { _ in
completion()
})
}
}