// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #import "AppDelegate.h" #import "MainViewController.h" @interface AppDelegate () @end static NSString *_kReloadChannelName = @"reload"; @implementation AppDelegate { MainViewController *_mainViewController; UINavigationController *_navigationController; FlutterEngine *_engine; FlutterBasicMessageChannel *_reloadMessageChannel; } - (FlutterEngine *)engine { return _engine; } - (FlutterBasicMessageChannel *)reloadMessageChannel { return _reloadMessageChannel; } - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; _mainViewController = [[MainViewController alloc] init]; _navigationController = [[UINavigationController alloc] initWithRootViewController:_mainViewController]; _navigationController.navigationBar.translucent = NO; _engine = [[FlutterEngine alloc] initWithName:@"test" project:nil]; [_engine runWithEntrypoint:nil]; _reloadMessageChannel = [[FlutterBasicMessageChannel alloc] initWithName:_kReloadChannelName binaryMessenger:_engine.binaryMessenger codec:[FlutterStringCodec sharedInstance]]; self.window.rootViewController = _navigationController; [self.window makeKeyAndVisible]; return YES; } @end