我在Xcode7中使用Swift2运行代码时,通过Push Segue方式呈现视图控制器后,出现以下错误:
_BSMachError: (os/kern) invalid capability (20)
_BSMachError: (os/kern) invalid name (15)
其他的SO文章都没有解决办法,有人知道这个问题吗?
我在Xcode7中使用Swift2运行代码时,通过Push Segue方式呈现视图控制器后,出现以下错误:
_BSMachError: (os/kern) invalid capability (20)
_BSMachError: (os/kern) invalid name (15)
其他的SO文章都没有解决办法,有人知道这个问题吗?
虽然这个问题似乎是一个错误并且很可能会被修复,但它源于在iOS 9中实现的新的应用程序传输安全(App Transport Security)。
如果您的应用程序从Web服务器获取数据以填充即将呈现的视图控制器,您可以通过验证/授权访问特定网站来解决这些错误。
您可能需要修改您的ATS例外字典(ATS Exception Dictionary)以适应您的需求
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>testdomain.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<false/>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<false/>
<key>NSExceptionRequiresForwardSecrecy</key>
<true/>
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.2</string>
<key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
<false/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<true/>
<key>NSThirdPartyExceptionMinimumTLSVersion</key>
<string>TLSv1.2</string>
<key>NSRequiresCertificateTransparency</key>
<false/>
</dict>
</dict>
</dict>
可以在这里或这里找到有关此解决方案的更多详细信息。 阅读苹果公司有关App Transport Security的文档也是值得的。
我遇到了相同的两个错误消息。在我的情况下,当用户在打开 UIAlertController
中选择按钮后,调用 [[UIApplication sharedApplication] openURL:url]
时出现了错误。我假设警报试图在我尝试打开网址的同时关闭。因此,我引入了一个轻微的延迟,错误消息就消失了。
dispatch_after(0.2, dispatch_get_main_queue(), ^{
[[UIApplication sharedApplication] openURL:url];
});
不确定这是否有助于你的具体问题,但我认为分享一下可能会有所帮助。
提前解散视图控制器可能会导致这种情况发生。
[self dismissViewControllerAnimated:YES completion:NULL];
//<do something..>
//<do something..>
[self dismissViewControllerAnimated:YES completion:NULL];
将您的info.plist文件中的本地化开发区域键从en更改为United States。
我这样做
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) { () -> Void in
AnswersDataServerEntity.saveSingleDocoment(doc)
}
self.view.endEditing(true)
我在调试时遇到了这个问题,当我在响应视图大小更改的断点中删除断点后,问题消失了。