我已将使用Swift 2.1编码的应用程序转换为Swift 4.1,几乎所有构建相关问题都已解决,现在当我要运行它时,它给出了如下错误。
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Unable to instantiate the UIApplication subclass instance. No class named Application is loaded.' *** First throw call stack: ( 0 CoreFoundation 0x000000010ff471e6 __exceptionPreprocess + 294 1 libobjc.A.dylib 0x000000010f5dc031 objc_exception_throw + 48 2 CoreFoundation 0x000000010ff4c472 +[NSException raise:format:arguments:] + 98 3 Foundation 0x000000010a75464f -[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 165 4 UIKit 0x000000010aca0306 _UIApplicationMainPreparations + 629 5 UIKit 0x000000010aca0027 UIApplicationMain + 111 6 DeÃÅplacement PeÃÅninsule 0x0000000108486271 main + 401 7 libdyld.dylib 0x0000000114618955 start + 1 8 ??? 0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException
实际上我已经检查过它使用了正确的Info.plist。
答案 0 :(得分:1)
该错误表示在启动应用程序时无法找到主类的任何对象进行实例化。 Info.plist文件中的Principal class
条目告诉UIApplicationMain()
函数在启动时加载哪个类。您可以尝试将该条目更改为UIApplication
,或创建名为UIApplication
的{{1}}子类来解决此问题。
答案 1 :(得分:-1)
崩溃报告的符号
1)从/Applications/Xcode.app/Contents/ SharedFrameworks / DTDeviceKitBase.framework / Versions / A / Resources / symbolicatecrash复制symbolicatecrash 到新文件夹“crashreport”
2)转到“crashreoprt”文件夹
3)使用命令
进行符号化注意:
1)构建应该发布。
2)复制期间剥离调试符号应为“NO”
3)crashreport文件夹必须具有(Symbolicationcrash,.crash 和.app)
答案 2 :(得分:-2)
崩溃报告的符号化 1)将symbolicatecrash从/Applications/Xcode.app/Contents/ SharedFrameworks / DTDeviceKitBase.framework / Versions / A / Resources / symbolicatecrash复制到新文件夹" crashreport" 2)转到" crashreoprt"夹 3)使用命令进行符号化 注意: 1)构建应该发布。 2)在复制期间剥离调试符号应为"否" 3)crashreport文件夹必须具有(Symbolicationcrash,.crash 和.app)