Xcode 7中iOS 9的XPC连接中断

我最近更新到Xcode 7,并将我的iPhone升级到iOS 9.我已经开发并发布了iOS应用程序,它在最新版本的iOS 8和Xcode 6上工作得非常好。

在尝试通过更新应用程序的iOS 9支持的过程中,我得到了最令人难以置信的奇怪的错误,让我感到莫名其妙。

我已经通过Xcode自动完成了所有的语法更正,现在我的应用程序可以正常生成。 它甚至运行在第一。

我有一个使用WebView的视图控制器的button。 此视图控制器会加载一个链接,显示来自YouTube的图片,网站或video。 内容一如既往地完美加载。 然而,程序会崩溃,并重新启动模拟器(和我的iPhone),并当我点击返回button(我在导航堆栈上)时,将我发送到locking屏幕。

在Xcode中,我收到以下消息:

XPC连接中断。 终止,因为没有系统的应用程序。

我有Flurry分析集成在我的应用程序的方式,不知道如果这是一个问题。

我该如何解决这个问题? 我searchXPC连接似乎不会返回类似于我的问题。 我什至不知道XPC连接是什么,为什么这是在我的应用程序呢?

编辑:我find了解决这个问题的方法。 我不能说这是一个修复。

当使用方法self.navigationController?.popViewControllerAnimated的过程中发生崩溃时,设置为true。 我碰巧把它设置为false,崩溃停止(现在转换看起来很糟糕)。

我不知道这是为什么会起作用,只是增加了我的困惑。

问题也出现在了我的故事板上。 我创build了一个新的项目,并提出了意见,一切似乎工作正常。 我在故事板源代码中find了这几条线(右键单击故事板并select视图为 – >源代码),这在工作版本和破损版本之间并不常见:

 <keyCommands> <keyCommand/> </keyCommands> 

我不知道这些行应该做什么,或者他们如何爬进我的故事板文件,但他们是如此艰难的应用程序崩溃,手机不得不重新启动。 我从我的主项目中删除了这些行,一切都再次运行。

我一直在努力完成同样的错误。 通过一个消除的过程,我发现它和任何一个阶级都没有任何关系,而是与故事板有关。 幸运的是,我经常保存备份,并试图比较故事板来确定我所做的事情,但是没有发现任何明显的东西。 备份副本工作正常,我能够将我的控制器类(从错误的副本与更改)复制到备份副本,他们工作正常。

我认为故事板中可能存在一个错误。

我只是面临同样的问题。 我不知道这是否会对你有帮助,但我也认为它是来自故事板:

在我的情况下,问题来自UITextView。 每当我尝试更改其中的默认文本,我有这个错误。 如果我让默认文本或保留为空,该应用程序工作正常。 制作一个IBOutlet并以编程方式更改文本也可以。

我尝试过与其他UI元素,但只有UITextView似乎有这个问题。

从Storybord的视图中删除UITextView将删除我的情况中的错误。

当使用QLPreviewController时,我遇到了这个问题。 错误信息如下,

 XPC connection interrupted _BSMachError: (os/kern) invalid capability (20) _BSMachError: (os/kern) invalid name (15) 

由于XPC意味着OS X进程间通信,所以我认为这可以解决问题,

 dispatch_async(dispatch_get_main_queue(), ^{ // do what you want to do. }); 

在UIControl的valueChanged:方法中,我遇到了同样的问题,所以我在codeChanged中创build了代码:在主线程中运行,解决了问题。

 @IBAction func valueChanged(sender: AnyObject) { dispatch_async(dispatch_get_main_queue(), { //code } } 

当我在-layoutSubviews方法中放置一个子视图时,我也有同样的错误信息:

 -(void)layoutSubviews { [super layoutSubviews]; [self populateByImageViews]; } 

它导致布局过程的无限循环和崩溃的应用程序。 不要在这个地方放置子视图!