Erreur de signature de Code à chaque fois que j'essaie de remplacer des fichiers stock dans une nouvelle application SceneKit

donc Xcode 8 a été récemment publié et je ne suis toujours pas sûr de ce qui exactement pourrait être la cause de ce problème (il pourrait être juste le fait que ce soit une version bêta de Xcode ou peut-être que je suis en quelque sorte faire quelque chose de incorrect).

le problème, c'est que j'essaie de créer une nouvelle application SceneKit et je suis en train de jouer avec le .fichiers scn.

j'ai créé un .fichier scn, héros".scn" à l'intérieur d'un héros".scnassets" et également fourni un .fichier png à l'intérieur de héros.dossier scnassets du nom de " heroTexture.png"

le code normalement fourni par Xcode 8.0 beta 1 pour ce projet dans le "GameViewController.le fichier swift a été modifié comme suit:

Code 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)))

Code Modifié:

...
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)))

Erreur Reçue:

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

Conclusion de la Question:

pourquoi j'obtiens une signature erreur quand tout ce que j'ai fait est simplement remplacer des fichiers?

Sidenote: je sais comment faire pour que la question de la signature du code disparaisse, mais cela implique de redémarrer l'ensemble du projet (ce qui ne me dérange pas). Le problème que je rencontre cependant est chaque fois que je change les fichiers, Je reçois cette erreur.

P. S: Voici une structure de fichier pour plus de facilité.FileStruct

24
demandé sur Mohammad Al-Ahdal 2016-06-15 12:01:05
la source

7 ответов

se débarrasser de cette erreur de construction en trois étapes faciles:

1) supprimer la plupart des dossier en cours liés à votre application, DerivedData (~/Library/Développeur/Xcode/DerivedData)

3) run

xattr-rc .

pour supprimer tous les attributs étendus (généralement liés à l'image des fichiers déjà modifiés dans Photoshop)

reconstruire votre application!

108
répondu ecume des jours 2016-09-07 18:21:59
la source

l'erreur provient des attributs à l'intérieur de vos fichiers image.

Voici une commande simple pour trouver tous vos fichiers png et supprimer leurs attributs. Exécuter ce dans vos projets répertoire racine de la borne. Reconstruction de, la propreté et le problème est résolu.

find . -type f -name '*.png' -exec xattr -c {} \;
18
répondu Mark McCorkle 2016-10-06 14:48:53
la source

je suis resource fork, finder information, or similar detritus not allowed erreur après avoir installé la version de développement de macOS et dans mon cas, elle a été causée par des attributs invalides sur certains de mes fichiers.

j'ai corrigé par la recherche d' com.apple.FinderInfo attributs sur mes fichiers comme ceci

ls [email protected] . > investigate.txt

maintenant ouvrir enquêter.txt dans votre éditeur de texte préféré et effectuer une recherche pour com.apple.FinderInfo et des attributs clairs sur tous les fichiers ayant cet attribut défini. Vous pouvez le faire en utilisant

xattr -c <filename> e.g. xattr -c iTunesArtwork.png

une fois que j'ai effacé tous mes fichiers, j'ai été en mesure de signer à nouveau mon application.

9
répondu Peter Theill 2016-06-24 11:29:20
la source

réparé! Apparemment, c'était une erreur avec le nouveau Xcode. Ce que vous devez faire est de redémarrer OS X/macOS et de nettoyer le projet. Ça devrait marcher après ça!

1
répondu Mohammad Al-Ahdal 2016-06-16 09:18:22
la source

Je n'ai pas pu retirer les informations du finder et redémarrer n'a pas fonctionné. Pour moi (J'ai Sierra beta installé) c'était parce que le projet était dans mon dossier Documents qui est synchronisé avec iCloud. Dès que j'ai fait un projet qui n'était pas dans un dossier synchronisé avec iCloud, ça a bien fonctionné, donc le bug pourrait être à faire avec iCloud aussi / au lieu de Xcode

1
répondu Sophie Clark 2016-07-18 12:00:27
la source

Cela semble résoudre le problème. Faites un .dossier atlas (c'est-à-dire " myImages.atlas"), à côté du dossier racine du projet. Ajoutez des images sur la .dossier atlas. Puis de l'intérieur dans le projet "ajouter des fichiers..." le. dossier atlas, (note: évitez de mettre le .atlas dossier dans l'art.dossier scnasstes, et assurez - vous que le projet dans "nettoyé" avant de reconstruire)

1
répondu Lawrence Fletcher 2016-11-15 08:04:37
la source

il s'agit d'un changement de durcissement de sécurité qui a été introduit avec iOS 10, macOS Sierra, watchOS 3, et tvOS 10.

la signature de Code ne permet plus à aucun fichier d'un paquet d'applications d'avoir un attribut étendu contenant une ressource ou des informations de Finder.

pour voir quels fichiers causent cette erreur, lancez cette commande dans Terminal:

$ xattr-lr

remplacer par le chemin d'accès à votre application bundle.

Voici un exemple de ce commande en action:

$ xattr-LR Foo.app

/ Applications / Foo.app: com.Apple.FinderInfo:

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

vous pouvez également supprimer tous les attributs étendus de votre paquet d'applications avec la commande xattr:

$ xattr-cr

notez que la navigation des fichiers dans un paquet avec la commande Show Package Contents de Finder peut entraîner l'ajout d'informations Finder à ceux fichier. Sinon, auditez votre processus de construction pour voir où les attributs étendus sont ajoutés.

1
répondu Kalpesh Panchasara 2016-11-28 17:36:49
la source

Autres questions sur