каждый сейчас и потом, мое приложение запускается с черным экраном, а также следующее предупреждение:Root-контроллер спорадически отсутствует
Application windows are expected to have a root view controller at the end of application launch
я использую раскадровку. Это время от времени случается случайным образом, когда я компилирую приложение, и ошибка, как правило, исчезает, если я вношу изменения в код и/или раскадровку, а затем перекомпилирую. Плохая компиляция продолжит запуск приложения в плохом состоянии, даже если вы его перезапустите.
Единственное, что необычно для меня - это то, что это первоначальный вид содержит представление карты, с несколькими видами контейнера (скрытыми при запуске) поверх него.
Я попытался использовать Spark Inspector для отладки иерархии представлений, когда это произойдет, и это показывает, что единственным элементом является UIWindow, никакие UIViews не загружаются вообще.
Это мой didFinishLaunchingWithOptions
(который является единственным методом в приложение делегата, который имеет код в нем), как Мэтт просил:
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[DDLog addLogger:[DDASLLogger sharedInstance]];
[DDLog addLogger:[DDTTYLogger sharedInstance]];
[[DDTTYLogger sharedInstance] setColorsEnabled:YES];
UIColor *pink = [UIColor colorWithRed:(118/255.0)
green:(214/255.0)
blue:(84/255.0)
alpha:1.0];
[[DDTTYLogger sharedInstance] setForegroundColor:pink
backgroundColor:nil
forFlag:LOG_FLAG_INFO];
#ifdef DEBUG
DDLogInfo(@"Launching in debug mode");
#else
DDLogWarn(@"Launching in release mode");
#endif
[AFNetworkActivityIndicatorManager sharedManager].enabled = YES;
[[AFNetworkActivityLogger sharedLogger] startLogging];
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil]
setFont:[UIFont fontWithName:@"OpenSans" size:14]];
NSMutableDictionary *titleBarAttributes = [NSMutableDictionary
dictionaryWithDictionary:
[[UINavigationBar appearance] titleTextAttributes]];
[titleBarAttributes setValue:[UIFont fontWithName:@"OpenSans" size:18]
forKey:NSFontAttributeName];
[[UINavigationBar appearance] setTitleTextAttributes:titleBarAttributes];
return YES;
}
Что делает ваш App Делегат код выглядит? – matt
Устранить столько, сколько вы можете, и проверить запуск еще. Я думаю, что вы слишком много делаете на старте, и это как-то заталкивает работы. Также зарегистрируйте контроллер корневого окна вашего окна. Предполагается, что у него есть один, и кажется, что он не получает ни одного, или он как-то настроен. – matt
Спасибо, но я повредил все там, в другие части кода, и я все равно получаю сообщение об ошибке. –