ios objective-c xcode ios8 ios-app-extension

Advertencia durante la aplicación de archivo con iOS 8 Extension en Xcode 6



objective-c ios8 (9)

Copiado de: https://stackoverflow.com/a/30459703/736384

"El código compilado generalmente contiene información de depuración. Estas cosas de depuración son útiles para inspeccionar el código en ejecución en el depurador, pero no tanto para el código optimizado que enviaría en las compilaciones de distribución. Por lo tanto, se elimina cuando se realiza una compilación de archivo.

El problema aquí es que PBXCp no puede eliminar los símbolos de depuración de los archivos binarios firmados porque esto invalidaría la firma digital. Entonces, si tiene un proyecto creado antes de Xcode 6.3, ahora recibirá una advertencia como esta.

Para corregir la advertencia, simplemente cambie ambos valores a NO. Eliminarlos no funciona porque el valor predeterminado sigue siendo SÍ para ambos. Las plantillas de proyecto que vienen con Xcode 6.3 tienen estas desactivadas por defecto. Solo los proyectos que se iniciaron con plantillas anteriores todavía tienen SÍ en la línea de lanzamiento ".

Fuente: https://www.cocoanetics.com/2015/04/skipping-copy-phase-strip/

Tengo un problema al archivar mi aplicación.

Creé un nuevo objetivo para una extensión iOS 8.

Cuando archivo la aplicación, recibo una advertencia.

La advertencia es

"Advertencia PBXCp", "advertencia: omitiendo la tira de la fase de copia, el código binario está firmado: / Users / Library / Developer / Xcode / DerivedData / App / Build / Intermediates / ArchiveInter mediates / AppName / IntermediateBuildFilesPath / UninstalledProducts / AppExtappex / AppE xt"

La aplicación está en Objective-C.


El marco / extensión ya está despojado y el código está firmado por defecto. El proyecto de aplicación no puede detectar que el marco ya ha sido eliminado y arroja una advertencia inofensiva. No debe deshabilitarlo o su aplicación no será eliminada.


En la sección "Implementación" en la configuración de compilación de su objetivo, busque Strip Debug Symbols During Copy y configúrelo en YES para cualquier compilación de producción.


Esto probablemente se deba a que archiva con el esquema DEBUG. Si selecciona el esquema LIBERACIÓN, la opción "quitar símbolos de depuración durante la copia" se establece en SÍ y no tiene esta advertencia.

Sugiero archivar con la configuración de DEPURACIÓN para la prueba beta, pero con la configuración de LIBERACIÓN para su publicación en la App Store.


Lo que funcionó para mí fue lo siguiente:

Edité el esquema que estaba archivando. En esa ventana, seleccioné ''Ejecutar'' y luego la pestaña ''Información''. En ''Build Configuration'' lo había cambiado a ''Release''. Simplemente lo cambié a ''Debug'' (opción por defecto) y esa advertencia desapareció.

Espero que esto ayude.


Marque la opción "Eliminar símbolos de depuración durante la copia" en la configuración de compilación de su objetivo Xcode. Dice que no puede quitar los símbolos de depuración porque la extensión ya estaba firmada.


Marque la opción "Estilo de tira" en la configuración de compilación del objetivo de Xcode. Si es "Símbolos no globales", cámbielo a "Todos los símbolos". Esto puede resolver el problema, pero no sé si hay otros problemas causados ​​por este cambio.


Parece haber cierta confusión en torno al efecto de los Símbolos de depuración de la tira durante la configuración de compilación de copia , le recomiendo leer este artículo para obtener información adicional: https://www.cocoanetics.com/2015/04/skipping-copy-phase-strip/ .

Aquí están mis conclusiones clave de la investigación de esta pregunta:

  • Cuando crea un nuevo proyecto con Xcode 6.2 o posterior, los valores insertados en el archivo del proyecto son NO para las dos configuraciones de compilación predeterminadas (Depurar y liberar) para esta configuración.
  • Establecer el valor en en la configuración de Lanzamiento y realizar un Archivo de Producto no tiene ningún efecto en el tamaño binario de la aplicación generada (lo aliento a verificar esto a través de una prueba en sus propios proyectos).
  • Los símbolos de depuración utilizados para la simbolización de los informes de bloqueo de iOS provienen de un archivo .dsym externo que está separado del paquete de aplicaciones, por lo que no esperaría que la tabla de símbolos se incluyera en el binario.

Si crea un nuevo proyecto de muestra y una extensión Today en Xcode 6.2, los valores predeterminados se establecen en NO para eliminar los símbolos de depuración.