我们尝试在iOS 9上运行WL 6.1 Fix Pack FP02应用,并在main.m文件中出现以下错误:
‘Application windows are expected to have a root view controller at the end of application launch’
The exception is thrown on this line of main.m:
int retVal = UIApplicationMain(argc, argv, appClass, @”MyAppDelegate”);
非常感谢任何帮助。
下面是xcode 7的堆栈跟踪:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Application windows are expected to have a root view controller at the end of application launch'
*** First throw call stack:
(
0 CoreFoundation 0x047e0a94 __exceptionPreprocess + 180
1 libobjc.A.dylib 0x0429fe02 objc_exception_throw + 50
2 CoreFoundation 0x047e092a +[NSException raise:format:arguments:] + 138
3 Foundation 0x00f0e3e6 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 118
4 UIKit 0x012b3568 -[UIApplication _runWithMainScene:transitionContext:completion:] + 3674
5 UIKit 0x012d6905 __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke3171 + 68
6 UIKit 0x012afbae -[UIApplication workspaceDidEndTransaction:] + 163
7 FrontBoardServices 0x07c1cccc __37-[FBSWorkspace clientEndTransaction:]_block_invoke_2 + 71
8 FrontBoardServices 0x07c1c7a3 __40-[FBSWorkspace _performDelegateCallOut:]_block_invoke + 54
9 FrontBoardServices 0x07c3a1cb -[FBSSerialQueue _performNext] + 184
10 FrontBoardServices 0x07c3a602 -[FBSSerialQueue _performNextFromRunLoopSource] + 52
11 FrontBoardServices 0x07c398fe FBSSerialQueueRunLoopSourceHandler + 33
12 CoreFoundation 0x046fae7f __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
13 CoreFoundation 0x046f0b0b __CFRunLoopDoSources0 + 523
14 CoreFoundation 0x046eff28 __CFRunLoopRun + 1032
15 CoreFoundation 0x046ef866 CFRunLoopRunSpecific + 470
16 CoreFoundation 0x046ef67b CFRunLoopRunInMode + 123
17 UIKit 0x012af497 -[UIApplication _run] + 540
18 UIKit 0x012b4cc1 UIApplicationMain + 160
19 MYAPP 0x00100f5d main + 157
20 libdyld.dylib 0x04c8ba21 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
答案 0 :(得分:1)
更新
请升级。
如果没有可以调试的正确示例,则很难回答,但应该注意的是,对于使用Xcode 7编译的应用程序正常运行,您需要确保至少进行以下调整:
在此处阅读有关ATS和Bitcode的更多信息:https://developer.ibm.com/mobilefirstplatform/2015/09/09/ats-and-bitcode-in-ios9/
看看是否可以解决此问题。如果没有,您必须提供具有复制步骤的应用程序。
您还应该注意,6.1 Fix Pack 2非常陈旧,作为IBM客户,您应该登录IBM Fix Central并下载最新的可用iFix(用于Studio和Server)并进行升级。这个最新的iFix还包含iOS 9相关的修复程序,因此除了对Xcode 7中编译的应用程序的上述必要更改外,建议先使用它进行测试。
从提供的示例项目中,您甚至没有使用Fix Pack 2,但是1.甚至更老......
答案 1 :(得分:0)
应用程序窗口应在应用程序启动结束时具有根视图控制器“
如果应用程序在启动后没有视图控制器,则会导致此错误。这可能是因为您尚未创建一个,因为您开始使用空应用程序,删除了视图控制器,或者可能是您删除了主视图控制器的入口点。