2016-09-17 33 views
80
2016-09-17 15:16:04.386085 appDemo[2371:94976] [] __nwlog_err_simulate_crash simulate crash already simulated **"nw_socket_set_common_sockopts setsockopt SO_NOAPNFALLBK failed: [42] Protocol not available"** 
2016-09-17 15:16:04.386676 appDemo[2371:94976] [] nw_socket_set_common_sockopts setsockopt SO_NOAPNFALLBK failed: [42] Protocol not available, dumping backtrace: 
     [x86_64] libnetcore-856.1.8 
    0 libsystem_network.dylib    0x0000000112dc780e __nw_create_backtrace_string + 123 
    1 libnetwork.dylib     0x0000000113bfa194 nw_socket_add_input_handler + 3002 
    2 libnetwork.dylib     0x0000000113bd7db8 nw_endpoint_flow_attach_protocols + 3768 
    3 libnetwork.dylib     0x0000000113bd6dd5 nw_endpoint_flow_setup_socket + 563 
    4 libnetwork.dylib     0x0000000113bd5b34 -[NWConcrete_nw_endpoint_flow startWithHandler:] + 2612 
    5 libnetwork.dylib     0x0000000113bf0d11 nw_endpoint_handler_path_change + 1261 
    6 libnetwork.dylib     0x0000000113bf0740 nw_endpoint_handler_start + 570 
    7 libdispatch.dylib     0x0000000112b44980 _dispatch_call_block_and_release + 12 
    8 libdispatch.dylib     0x0000000112b6e 
2016-09-17 15:16:04.387153 appDemo[2371:94976] [] nw_endpoint_flow_attach_protocols [2 192.168.0.100:80 in_progress socket-flow (satisfied)] Attached flow protocol 
2016-09-17 15:16:04.387679 appDemo[2371:94976] [] nw_connection_endpoint_report [2 192.168.0.100:80 in_progress socket-flow (satisfied)] reported event flow:start_connect 

我正在使用xcode 8版本与。现在,我正在开发一个API。如果我使用Xcode 7中的API,它的工作正常,但是当我在xcode 8错误消息中出现的相同API出现时无法解析。错误:协议不可用,倾倒回溯

+0

然后“检查版本” :) – pedrouan

+0

哪个版本我检查? – Rahul

+0

您的API。请记住,您的API可能会错过一些重要更新,因为iOS 10 SDK中有很多更改,至少重要的委托方法以及API中的那些方法可能无法收听。 – pedrouan

回答

140

我找到了解决办法如下:

  1. 在Xcode菜单,进入产品中心>方案>编辑方案
  2. 打开参数选项卡
  3. 添加环境变量: - OS_ACTIVITY_MODEdisable

Xcode 8 Edit Scheme screen capture image

+1

在哪里可以使用此代码?我有同样的错误 – BilalAhmed

+0

我已经明确提到了截图的步骤。请按照步骤,让我知道你是否仍然面临这个问题。 @BilalAhmed。不要忘了接受答案,如果它对你有用:) –

+0

它没有为我工作,我使用Xcode 8.1和iOS 10.6,我的其余api部署在IIS的http://我不确定这个错误是什么以及如何解决这个问题,请帮忙。 – BilalAhmed

12

没有SO_NOAPNFALLBK插座选项男士插座。我想,这个选项是由Apple添加的,并且与推送通知服务相关,这些服务在模拟器上不可用。

5

要关闭详细的OS活动模式, 你干脆去(在Xcode菜单栏)

  • 产品 - >计划 - >编辑方案 - >运行(左) - >选择参数 - >在环境变量

  • 附加OS_ACTIVITY_MODE和值作为禁用

+0

OS_ACTIVITY_MODE禁用可禁用所有日志功能。 – iOS

8

一个清洁的解决方案(比ANKIT戈亚尔给出的一个),修复模拟器日志,而不影响设备日志,请https://stackoverflow.com/a/39651073/1033581

  1. 在产品>方案>编辑计划...>运行,设置OS_ACTIVITY_MODE环境变量$ {DEBUG_ACTIVITY_MODE}所以它看起来是这样的:

OS_ACTIVITY_MODE environment variable to ${DEBUG_ACTIVITY_MODE}

  • 转到你的项目构建设置,然后单击+添加一个名为一个用户定义的设置DEBUG_ACT IVITY_MODE。展开此设置并单击“调试”旁边的+以添加特定于平台的值。选择下拉菜单并将其更改为“Any iOS Simulator SDK”。然后将其值设置为“禁用”(Xcode中8)或“默认”(Xcode中9),所以它看起来是这样的:
  • User-Defined setting DEBUG_ACTIVITY_MODE

    +0

    感谢您的回答。你认为禁用OS_ACTIVITY_MODE是一个好习惯吗?因为如果你禁用它,你将不会得到自动布局问题,其他警告和崩溃堆栈跟踪的警告。 –

    +0

    @MilanKamilya这个答案旨在在Release中禁用它。至于不在Debug中禁用它,它也会更好,直到你获得太多不需要的日志为止。 –

    +0

    接受的答案对我来说不起作用,但这个选项的确如此。谢谢 !! – JamesG