更新:我在这一年使用了我的一个DTS。目前正在与Apple支持工程师合作。根据他的建议,我也为此创建了一个错误报告。随着时间的推移,我会更新这个线程,希望能够产生一个最终的解决方案。应用程序在Segue for iOS 9 + Xcode 7上崩溃整个设备
不知何故,我已经想出了一种方法来创建一个应用程序,可以重新启动模拟器和/或物理设备。为我而欢呼。当我升级到xcode 7并开始测试iOS 9时,这个问题就开始了。在任何设备/模拟器< iOS 9上,这个问题并没有让它变得丑陋。
当我运行它连接到Xcode中,唯一的日志消息我看到的是
XPC connection interrupted
Terminating since there is no system app.
我已经把范围缩小到被调用
[self addChildViewController:segue.destinationViewController];
的一段代码,这段代码是在这种风格创建的“MultichildContainerViewController”的一部分view controller
在这一点上,我只是不知道在哪里看/做解决这个问题。如果我注释掉了childviewcontroller的添加,一切都很好,应用程序正常运行。如果我不注释它,它将重新启动我的整个模拟器。
有关何处可以找到其他调试信息或可能修复的任何想法?我只是不知道该在哪里寻找更多的信息来反过来寻求帮助。任何帮助表示赞赏,谢谢。
编辑: 我不知道这是否有帮助,但我能够在实际的iOS模拟器system.log中追捕它。似乎没有任何引用我自己的代码库,只是背板?
Oct 16 17:56:29 MyComputer backboardd[43977]: -[NSNull isEqualToString:]: unrecognized selector sent to instance 0x10de1baf0
Oct 16 17:56:29 MyComputer backboardd[43977]: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull isEqualToString:]: unrecognized selector sent to instance 0x10d
e1baf0'
*** First throw call stack:
(
0 CoreFoundation 0x000000010dbf6f65 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x000000010df82deb objc_exception_throw + 48
2 CoreFoundation 0x000000010dbff58d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205
3 CoreFoundation 0x000000010db4cf7a ___forwarding___ + 970
4 CoreFoundation 0x000000010db4cb28 _CF_forwarding_prep_0 + 120
5 BackBoardServices 0x000000010d020b28 -[BKSHIDEventKeyCommandDescriptor isEqual:] + 155
6 CoreFoundation 0x000000010db1630b -[__NSSetM addObject:] + 411
7 CoreFoundation 0x000000010db466a0 -[NSMutableSet unionSet:] + 736
8 BackBoardServices 0x000000010d0223a3 -[BKSHIDEventRouter addHIDEventDescriptors:] + 38
9 backboardd 0x000000010c73a881 backboardd + 186497
10 libdispatch.dylib 0x000000010e862df5 _dispatch_call_block_and_release + 12
11 libdispatch.dylib 0x000000010e87e4a7 _dispatch_client_callout + 8
12 libdispatch.dylib 0x000000010e868184 _dispatch_queue_drain + 1048
13 libdispatch.dylib 0x000000010e867b3c _dispatch_queue_invoke + 595
14 libdispatch.dylib 0x000000010e869454 _dispatch_root_queue_drain + 565
15 libdispatch.dylib 0x000000010e869218 _dispatch_worker_thread3 + 98
16 libsystem_pthread.dylib 0x000000010ebaa4f2 _pthread_wqthread + 1129
17 libsystem_pthread.dylib 0x000000010eba8375 start_wqthread + 13
)
编辑:我也想强调,这不是简单地导致应用程序崩溃,这是导致整个模拟器重新启动。我也可以在物理设备上触发此重新启动。如果这只是一个在NSNull上调用 isEqualToString 的简单情况,是不是应该只会崩溃我的应用?不是整个模拟器?
我得到相同的错误!有人发布了苹果的支持线程https://forums.developer.apple.com/thread/22087。每当我尝试呈现popover或类似动画时,都会发生这种情况。仍然试图隔离这种情况 –
很抱歉听到@HaydenHolligan。我已更新问题以显示我正在采取的解决此问题的步骤。希望如果/当我的问题解决了,我们可以解决你和其他人。如果你认为它的重要性,那么顺便问一下这个问题。将有助于获得它的知名度。 – Ceryni