dyld: Símbolo no encontrado: _NSURLAuthenticationMethodClientCertificate cuando se intenta ejecutar la aplicación iOS

Mi aplicación se está bloqueando con el mensaje:

dyld: Símbolo no encontrado: _NSURLAuthenticationMethodClientCertificate
Remitido desde: / var / mobile / Applications / C7B596AD-FB09-4685-BDFC-7E955A5DD185 / IRON TRAINERS.app/IRON TRAINERS Se espera en: /System/Library/Frameworks/CFNetwork.framework/CFNetwork en / var / mobile / Applications / C7B596AD-FB09-4685-BDFC-7E955A5DD185 / IRON TRAINERS.app/IRON TRAINERS (lldb)

cuando bash construir y ejecutar. Cuando elimino CFNetwork de mi proyecto, funciona, no sé por qué.

Acabo de instalar Xcode6Beta y abrí mi proyecto. Funcionó bien en Xcode5.1.

ACTUALIZAR:

Funciona bien en el simulador de iOS con Xcode 6, el problema está en mi dispositivo con iOS 7.1.1.

ACTUALIZACIÓN 2:

La respuesta seleccionada a continuación funcionó para mí, aunque ya tenía el marco de trabajo básico agregado a mi proyecto, tuve que eliminarlo y volver a agregarlo. Problema resuelto, al menos, por ahora. 🙂

Editado para incluir dos posibles pasos que debe tomar:

  1. Asegúrese de tener un marco de referencia para su proyecto. (Quítelo y agréguelo nuevamente para estar seguro).
  2. Asegúrese de que el marco de Foundation incluya está antes de CFNetwork.

Parece que hay un cambio en los encabezados que incluyen lo que en iOS8.0 (el archivo glextensions, por ejemplo, ya no está en el encabezado superior). Si agrega explícitamente el marco de Foundation a su proyecto, se comstackrá bien. Hacer CFNetwork opcional, por supuesto, conducirá a fallas y es solo una solución para el error de comstackción y no una solución en general.

enter image description here

Tuve un problema similar con UIAlertAction

dyld: Símbolo no encontrado: _OBJC_CLASS _ $ _ UIAlertAction Referenciado en: / var / mobile / Applications / …. app / … Esperado en: /System/Library/Frameworks/UIKit.framework/UIKit en / var / mobile / Applications / …. aplicación / …

Hacer que UIKit.frameWork Optional resolviera mi problema. En su caso, supongo que hacer que su CFNetwork.framework optional también resolverá su problema.

Haga que su <code/> CFNetwork.framework </ code> sea opcional”></p>
</div>
</li><!-- #comment-## -->
<div class=

Reordenar en XCode no funcionó; Estoy usando Cocoapods, que crea un archivo Pods.xcconfig. Esto tiene una línea OTHER_LDFLAGS. Puse -framework Foundation como la primera entrada, y eso hizo que mi proyecto funcionara.

 OTHER_LDFLAGS = -framework Foundation -ObjC … 

(Cuidado, este archivo se vuelve a generar cada vez que pod update ).

Reordene sus marcos para tener Foundation antes de CFNetwork.

Esa es una solución temporal a algo que obviamente es un error en Xcode 6.

Me encontré con este problema exacto en WWDC. Hablé con un par de ingenieros de Apple que me dijeron que este es un error en el SDK causado por el movimiento de algunos símbolos entre CFNetwork y Foundation, y que se resolvería en la próxima versión, que se publicará muy pronto. Puede solucionarlo en algunos casos jugando con el orden en el que se importan los marcos, pero no siempre funcionará.

Tuve el mismo problema al usar sqlite3 con Xcode 6.3 en un dispositivo que ejecuta iOS 8.1.3 y así usar sqlite3 v3.7.13.

La función C sqlite3_errstr () se introdujo en sqlite3 v3.7.15.

Mi código llamaba a sqlite3_errstr ().

La aplicación estaba fallando en el lanzamiento.

Establecer libsqlite3.dylib como opcional (en lugar de obligatorio) hizo el trabajo.

Obtuve un error similar: dyld: Símbolo no encontrado: _NSDictionary0 Por el enlace: Restablecí el objective de implementación de mis proyectos relacionados al mismo valor: 8.0, entonces está bien. Puede haber algo cambiado en ios9.0 e ios8.0, por lo que si queremos que 8.0 sea compatible, deberíamos hacer que los proyectos relacionados sepan.

dyld: Símbolo no encontrado: ___NSDictionary0__ al usar Google ServiceGenerator binary con documentos de descubrimiento en XCode 7 y iOS target 9.0

Hacer CFNetwork.framework opcional, funcionó para mí

Las pocas veces que sucedió conmigo una simple Limpieza (shift + cmd + K) hizo el truco.

    Intereting Posts