apple ios xcode swift scenekit xcode8

ios - arkit apple documentation



Error de firma de código Siempre que intento reemplazar los archivos de stock en la nueva aplicación SceneKit (7)

¡Arreglado! Aparentemente fue un error con el nuevo Xcode. Lo que debe hacer es reiniciar OS X / macOS y limpiar el proyecto. ¡Después de eso debería de funcionar!

Así que Xcode 8 se lanzó recientemente y todavía no estoy seguro de qué podría estar causando este problema (podría ser solo el hecho de que es una versión beta de Xcode o quizás de que estoy haciendo algo incorrectamente).

El problema en cuestión es que estoy tratando de crear una nueva aplicación SceneKit y actualmente estoy jugando con los archivos .scn.

Creé un archivo .scn, "hero.scn" dentro de "hero.scnassets" y también proporcioné un archivo .png dentro de la carpeta hero.scnassets con el nombre de "heroTexture.png"

El código normalmente proporcionado por Xcode 8.0 beta 1 para este proyecto en el archivo "GameViewController.swift" se editó de la siguiente manera:

Código original:

... let scene = SCNScene(named: "art.scnassets/ship.scn")! ... let ship = scene.rootNode.childNode(withName: "ship", recursively: true)! ship.run(SCNAction.repeatForever(SCNAction.rotateBy(x: 0, y: 2, z: 0, duration: 1)))

Código editado:

... let scene = SCNScene(named: "hero.scnassets/hero.scn")! ... let hero = scene.rootNode.childNode(withName: "hero", recursively: true)! hero.run(SCNAction.repeatForever(SCNAction.rotateBy(x: 0, y: 2, z: 0, duration: 1)))

Error recibido:

.../Xapp.app: resource fork, finder information, or similar detritus not allowed Command /usr/bin/codesign failed with exit code 1

Conclusión de la pregunta:

¿Por qué recibo un error de firma cuando todo lo que he hecho es simplemente reemplazar los archivos?

Nota: Sé cómo hacer que desaparezca el problema de firma de código, pero eso implica reiniciar todo el proyecto (lo cual no me importa). El problema al que me enfrento, sin embargo, es que cuando cambio los archivos, recibo este error.

PD: Aquí hay una estructura de archivos solo por facilidad.


Deshazte de este error de compilación en tres sencillos pasos:

1) elimine la carpeta más reciente relacionada con su aplicación en DerivedData (~ / Library / Developer / Xcode / DerivedData)

2) en la terminal, cd al dir del proyecto actual

3) correr

xattr -rc.

para eliminar todos los atributos extendidos (generalmente relacionados con archivos de imagen editados previamente en Photoshop)

¡Reconstruye tu aplicación!


El error es de atributos dentro de sus archivos de imagen.

Aquí hay un comando simple para encontrar todos sus archivos png y eliminar sus atributos. Ejecuta esto en tu directorio raíz de proyectos desde la terminal. Reconstruir, limpiar y resolver problemas.

find . -type f -name ''*.png'' -exec xattr -c {} /;


Este es un cambio de seguridad que se introdujo con iOS 10, macOS Sierra, watchOS 3 y tvOS 10.

La firma de código ya no permite que ningún archivo en un paquete de aplicaciones tenga un atributo extendido que contenga una bifurcación de recursos o información de Finder.

Para ver qué archivos están causando este error, ejecute este comando en la Terminal:

$ xattr -lr

Reemplazar con la ruta de acceso a su paquete de aplicación real.

Aquí hay un ejemplo de este comando en acción:

$ xattr -lr Foo.app

/Aplicaciones/Foo.app: com.apple.FinderInfo:

00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ |

También puede eliminar todos los atributos extendidos de su paquete de aplicaciones con el comando xattr:

$ xattr -cr

Tenga en cuenta que la exploración de archivos dentro de un paquete con el comando Mostrar contenido del paquete del Finder puede hacer que la información del Finder se agregue a esos archivos. De lo contrario, audite su proceso de compilación para ver dónde se están agregando los atributos extendidos.


Esto parece aclarar el problema. Haga una carpeta .atlas (es decir, "myImages.atlas"), fuera de la carpeta raíz del proyecto. Añade tus imágenes a la carpeta .atlas. Luego desde dentro del proyecto "agregue archivos a ..." la carpeta .atlas, (nota: evite colocar la carpeta .atlas en la carpeta art.scnasstes y asegúrese de que el proyecto esté "limpio" antes de reconstruir)


No pude eliminar la información del buscador y reiniciar no funcionó. Para mí (tengo Sierra beta instalada) fue porque el proyecto estaba en mi carpeta Documentos, que está sincronizada con iCloud. Tan pronto como hice un proyecto que no estaba en una carpeta sincronizada con iCloud, funcionó bien, así que el error podría estar relacionado también con iCloud / en lugar de con Xcode


Obtuve el resource fork, finder information, or similar detritus not allowed error resource fork, finder information, or similar detritus not allowed después de haber instalado la versión de desarrollo de macOS y en mi caso fue causado por atributos no válidos en algunos de mis archivos.

Lo arreglé buscando atributos com.apple.FinderInfo establecidos en mis archivos como este

ls -alR@ . > investigate.txt

Ahora abra investig.txt en su editor de texto favorito y realice una búsqueda de com.apple.FinderInfo y borre los atributos de todos los archivos que tengan este conjunto de atributos. Puedes hacerlo usando

xattr -c <filename> por ejemplo, xattr -c iTunesArtwork.png

Una vez que borré todos mis archivos pude firmar nuevamente mi aplicación.