J'ai récemment mis à niveau vers Xcode 10 et commencé le processus de mise à jour de notre application pour passer à la version 4.2. Après une journée de reconstruction des frameworks tiers et l'ajout de solutions de contournement à divers problèmes, j'ai pu exécuter notre application sur les nouveaux simulateurs.
Cependant, lorsque j'ai essayé de fonctionner sur mon téléphone personnel (sous iOS 12.0 GM), une erreur s'est produite lors de l'installation de l'application, comme décrit dans le titre.
Je sais qu'il existe un lot sur déjà _ { réponse _ { questions concernant ce sujet sur SO et Internet, mais était incapable de faire fonctionner l'un d'entre eux.
Cela me bloque depuis environ un jour et demi maintenant, donc je me demandais si quelqu'un avait une idée de la façon dont cela pourrait être atténué.
Voici les mesures que j'ai prises jusqu'à présent qui n'ont pas fonctionné (peut-être qu'elles fonctionneront pour d'autres à l'avenir!):
code sign on copy
est coché dans tous les cadres copiésDeveloper
et non Distribution
Toute aide serait grandement appréciée :)
Update: J'ai essayé de retélécharger et de reconstruire à partir de zéro sur une machine neuve, et le même problème se produit. Fait intéressant, je peux bien archiver et valider l'application.
J'ai également essayé de signer un projet vide avec le même identifiant de paquet et cela a bien fonctionné. Le problème se situe donc soit dans nos frameworks tiers, soit dans un paramètre étrange activé lors de la transition à partir de Xcode 9.4. Je vais commencer par supprimer les frameworks tiers un par un jusqu'à ce que je puisse le compiler.
Update 2: Toujours pas de chance. Essayé de dégager la plupart des cadres et rien. Voici les journaux de périphérique, vous demandant si Skipping a profile because of error 0xe8008012
a quelque chose à voir avec cela:
https://Gist.github.com/joshuawright11/6889ce1a0872262df77f97d63830baa5
Update 3: J'ai donc pu l'installer en commentant le script carthage copy-frameworks dans les phases de construction (puis en nettoyant/en modifiant les données dérivées). Bien sûr, cela signifie qu'il se bloque au démarrage car il manque ces frameworks, mais cela signifie que le problème est soit avec carthage, soit avec l'un des frameworks carthage liés. Pas nos certificats de signature, profils de provisioning ou base de code. Nous allons essayer de supprimer ces frameworks un par un et je vais mettre à jour ici.
Final Update l'a finalement compris. La solution s’est avérée être un joli créneau (voir ci-dessous), mais heureusement, cette question sert de compilation de toutes les solutions liées à ce problème sur Internet haha.
Deviner:
J'ai rencontré ce problème avec carthage: https://github.com/Carthage/Carthage/issues/2472 et ai utilisé leur solution suggérée consistant à régler EXPANDED_CODE_SIGN_IDENTITY = '' lors du transfert d'éléments vers xcode 10.
À l’évidence, c’est cette ligne qui fait que carthage se blesse lors de la copie de cadres, ce qui cause l’erreur. J'ai téléchargé la version la plus récente de carthage pour résoudre le problème, puis j'ai supprimé la ligne EXPANDED_CODE_SIGN_IDENTITY=''
et tout a fonctionné. Quelle perte de temps.
Je ne sais pas si c'est également votre cas, mais j'ai récemment rencontré cette erreur alors que j'essayais de lancer une application React Native sur iPhone. Cela a commencé après que j'ai intégré la bibliothèque Lottie pour React Native
Le problème a été causé par l'exécution de ce script d'exécution dans Build Phases: http://ikennd.ac/blog/2015/02/stripping-unwanted-architectures-from-dynamic-libraries-in-xcode/ . Le script n'a pas réussi à extraire les architectures de Lottie.framework, donnant une "input file (.../Lottie.framework/Lottie) must be a fat file when the -extract option is specified
Pour résoudre ce problème, j'ai ajouté une vérification dans le script pour ignorer les fichiers non gras:
# ...
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
if lipo -info "$FRAMEWORK_EXECUTABLE_PATH" | grep -iq "Non-fat file"
then
echo "This is a non-fat file, skipping"
continue
fi
EXTRACTED_ARCHS=()
# ...
J'ai eu le même problème avec xcode 10.0 (10A255).
Signature invalide - Une ressource scellée est manquante ou invalide. Le fichier dans le chemin [xxxx.app/xxxxx] n'est pas correctement signé.
xcode 9.4.1 (9F2000) était toujours en mesure de soumettre l'application sans problèmes.
Je pourrais résoudre le problème en supprimant tous les fichiers de support (txt, json, rtf, html, ttf, etc.), puis en les rajoutant.
Je vous suggère de soumettre une construction sans les fichiers. Si cela fonctionne, vous pouvez les ajouter à nouveau étape par étape
Dans mon cas, j'avais à la fois une disposition iPhoneXS non valide et un conflit d'identificateur de paquet. Mon projet a été tenté après une mise à niveau de Xcode et un nouveau téléphone a été connecté. Après avoir suivi les étapes ci-dessus (chaîne de clés et profils entièrement recréés, dossier persistant supprimé, etc.).
Paramètres du projet cible:
Je suis pratiquement sûr que seul le conflit d'identifiants de bundles a bloqué l'entrée automatique normale de mon périphérique dans les périphériques provisionnés.
Dans les phases de construction/Carthage de la cible du projet, mettez la commande carthage comme suit:
EXPANDED_CODE_SIGN_IDENTITY = '' carthage copy-frameworks
Ce n'est qu'une solution temporaire, tandis que le problème get environnements var est résolu.