public static void EnsureInitialized(TogglPresenter viewPresenter, ApiEnvironment environment, Platform platform, string version) { if (Instance != null) { return; } Instance = new IosDependencyContainer(viewPresenter, environment, platform, version); UIDependencyContainer.Instance = Instance; }
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) { #if !USE_PRODUCTION_API System.Net.ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true; #endif #if !DEBUG Firebase.Core.App.Configure(); #endif UNUserNotificationCenter.Current.Delegate = this; UIApplication.SharedApplication.RegisterForRemoteNotifications(); Messaging.SharedInstance.Delegate = this; initializeAnalytics(); Window = new UIWindow(UIScreen.MainScreen.Bounds); Window.MakeKeyAndVisible(); setupNavigationBar(); setupTabBar(); IosDependencyContainer.EnsureInitialized(Window, this); var app = new AppStart(IosDependencyContainer.Instance); app.LoadLocalizationConfiguration(); app.UpdateOnboardingProgress(); app.SetFirstOpened(); app.SetupBackgroundSync(); var accessLevel = app.GetAccessLevel(); loginWithCredentialsIfNecessary(accessLevel); navigateAccordingToAccessLevel(accessLevel, app); var accessibilityEnabled = UIAccessibility.IsVoiceOverRunning; IosDependencyContainer.Instance.AnalyticsService.AccessibilityEnabled.Track(accessibilityEnabled); var watchservice = new WatchService(); watchservice.TryLogWatchConnectivity(); #if ENABLE_TEST_CLOUD Xamarin.Calabash.Start(); #endif return(true); }