objective-c ios10 xcode8.2

objective c - Error: protocolo no disponible, volcado de rastreo



objective-c ios10 (4)

Esta pregunta ya tiene una respuesta aquí:

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

Estoy usando la versión xcode 8 con ios 10 . Ahora estoy trabajando en una API. Si, uso la API en Xcode 7 funciona bien, pero cuando aparece la misma API que usé en xcode 8 , aparece el mensaje de error No se puede analizar.


Encontré la solución de la siguiente manera:

  1. En el menú XCode, vaya a Producto> Esquema> Editar esquema
  2. Abra la pestaña Argumentos
  3. Agregue la variable de entorno: - OS_ACTIVITY_MODE está disable


No hay una opción de socket SO_NOAPNFALLBK en el socket man . Supongo que Apple agrega esta opción y está relacionada con los servicios de notificaciones push, que no están disponibles en el simulador.


Para desactivar Verbose para el modo de actividad del sistema operativo, simplemente vaya a (en la barra de menú de Xcode)

  • Producto -> Esquema -> Editar esquema-> Ejecutar (izquierda) -> Seleccionar argumentos -> En variables de entorno ,

  • agregue OS_ACTIVITY_MODE y valor como deshabilitar


Una solución más limpia (que la proporcionada por Ankit Goyal) que corrige los registros del simulador sin afectar los registros del dispositivo está disponible en https://.com/a/39651073/1033581 :

  1. En Producto> Esquema> Editar esquema ...> Ejecutar, establezca la variable de entorno OS_ACTIVITY_MODE en $ {DEBUG_ACTIVITY_MODE} para que se vea así:

  1. Vaya a la configuración de compilación de su proyecto y haga clic en + para agregar una configuración definida por el usuario llamada DEBUG_ACTIVITY_MODE. Expanda esta configuración y haga clic en + junto a Depurar para agregar un valor específico de la plataforma. Seleccione el menú desplegable y cámbielo a "Any iOS Simulator SDK". Luego establezca su valor en "deshabilitar" (Xcode 8) o "predeterminado" (Xcode 9) para que se vea así: