web-dev-qa-db-fra.com

Avertissement lors de l'archivage App avec extension iOS 8 dans Xcode 6

J'ai un problème lors de l'archivage de mon application.

J'ai créé une nouvelle cible pour une extension iOS 8.

Lorsque j'archive l'application, je reçois un avertissement.

L'avertissement est 

"Avertissement PBXCp", avertissement: ignorer la barrette de phase de copie, le binaire est un code Signé: /Users/Library/Developer/Xcode/DerivedData/App/Build/Intermediates/ArchiveInter Mediates/AppName/IntermediateBuildFiles /UninstalledProducts/AppExtappex/AppE Xt "

L'application est en Objective-C.

57
Gianpispi

Cochez l'option "Supprimer les symboles de débogage pendant la copie" dans les paramètres de construction de votre cible Xcode. C'est dire qu'il ne peut pas supprimer les symboles de débogage car l'extension était déjà signée.

25
perezda

Si vous créez un exemple de projet et une extension Today dans Xcode 6.2, les valeurs par défaut sont définies sur NO pour supprimer les symboles de débogage. 

enter image description here

8
Collin

Copié à partir de: https://stackoverflow.com/a/30459703/736384

"Le code compilé contient généralement des informations de débogage. Ces informations sont utiles pour inspecter le code en cours d'exécution dans le débogueur, mais moins pour le code optimisé une construction d'archive.

Le problème ici est que PBXCp ne parvient pas à éliminer les symboles de débogage depuis des fichiers binaires signés car cela invaliderait le fichier numérique Signature. Donc, si vous avez un projet créé avant Xcode 6.3 vous allez maintenant recevoir un avertissement comme celui-ci.

Pour résoudre l'avertissement, il suffit de changer les deux valeurs en NO. En les enlevant fait ne fonctionne pas car la valeur par défaut est toujours YES pour les deux. Le projet Les modèles fournis avec Xcode 6.3 ont ceux-ci désactivés par défaut . Seuls les projets qui ont été démarrés avec des modèles plus anciens ont toujours OUI sur la ligne de sortie. "

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

8
Luis Ascorbe

Le framework/extension est déjà dépouillé et le code signé par défaut. Le projet d'application ne peut pas détecter que le cadre a déjà été dépouillé et envoie un avertissement inoffensif. Vous devriez pas le désactiver ou votre application ne sera pas supprimée.

6
Monstieur

Il semble y avoir une certaine confusion autour de l’effet du paramètre Bande de symboles de débogage au cours de la copie, je vous recommande de lire cet article pour obtenir des informations supplémentaires: Saut de copie de la bande de phase .

Voici ce que je retiens de mes recherches sur cette question:

  • Lorsque vous créez un nouveau projet avec Xcode 6.2 ou version ultérieure, les valeurs Insérées dans le fichier de projet sont NO pour les deux configurations par défautbuild (Debug et Release) pour ce paramètre.
  • Définir la valeur sur YES dans la configuration Release et que le Effectuant une archive de produit n'a aucun effet sur la taille binaire de l'application Générée (je vous encourage à le vérifier au moyen d'un test Sur. vos propres projets).
  • Les symboles de débogage utilisés pour Sybolication des rapports d'incident iOS viennent À partir d'un fichier .dsym externe distinct de l'application Bundle, donc je ne m'attendrais pas à ce que la table des symboles soit incluse dans le binaire .
3
Mark Edington

Cochez l'option "Style de bande" dans le paramètre de construction de la cible Xcode. S'il s'agit de "Symboles non globaux", remplacez-le par "Tous les symboles". cela peut résoudre le problème, mais je ne sais pas s'il existe d'autres problèmes causés par ce changement.

1
Xichao Teng

Dans la section "Déploiement" du paramètre de génération de votre cible, recherchez Strip Debug Symbols During Copy et définissez-le sur YES pour toutes les générations de production.

enter image description here

1
ehrpaulhardt

Ce qui a fonctionné pour moi a été le suivant:

J'ai édité le schéma que j'étais en train d'archiver. Dans cette fenêtre, j'ai sélectionné "Exécuter", puis l'onglet "Info". Dans 'Build Configuration', je l'avais changé en 'Release'. Je viens de le changer en 'Debug' (option par défaut) et cet avertissement est parti.

J'espère que ça aide.

0
ajpallares