web-dev-qa-db-fra.com

erreur iOS "Le binaire incorporé n'est pas signé avec le même certificat que l'application parente"

Ce sont mes premiers pas dans le développement d'applications IOS et je suis confronté à un problème que je n'arrive pas à résoudre.

error: Embedded binary is not signed with the same certificate as the parent app. Verify the embedded binary target's code sign settings match the parent app's.

    Embedded Binary Signing Certificate:    Not Code Signed
    Parent App Signing Certificate:         iPhone Developer: Emil Adz (9QNEF95395)

Je ne comprends pas, qu'est-ce qu'un Certificat de signature binaire incorporé ?

J'ai repris les questions avec la même erreur ici, mais aucune d’entre elles n’était liée au problème présenté ici ( Not Code Signed ).

J'ai essayé de révoquer mon certificat auprès du centre des développeurs Apple et de demander un autre certificat, mais le problème persiste.

Est-ce que certains savent comment cela pourrait être corrigé?

23
Emil Adz

Le binaire incorporé fait référence à un widget que vous déployez avec votre application. 

Dans votre cas, vous ne signez pas votre widget avec une identité de signature (puisque votre erreur dit "Pas de code signé"). 

Pour résoudre ce problème, accédez à votre fichier Projet, recherchez la cible de votre widget et, sous l'onglet Paramètre de construction, recherchez la valeur Identité de signature de code. Choisissez la même identité de signature de code que vous utilisez pour la cible de votre application principale.

Vous devrez également créer et configurer un profil d'approvisionnement spécialement pour votre widget lorsque vous souhaitez le publier. 

34
Arie Litovsky

Parfois, aucune des solutions sur Stackoverflow ne fonctionne. Dans ce cas,

Solution

  1. Assurez-vous qu'il n'y a aucune marque rouge/problème dans aucune des sections des fonctionnalités de signature (débogage), de signature (version) et activée dans MainApp et EmbeddedApp
  2. Assurez-vous que les certificats et les profils de provisioning sont installés sous le trousseau de connexion/système.

 enter image description here

  1. Assurez-vous que votre certificat est jamais jamais défini comme Toujours faire confiance. L'accès doit être conservé comme Utiliser les valeurs système par défaut

 enter image description here

21
Sazzad Hissain Khan

Il semble que ces problèmes apparaissent dans xcode 10 et que la résolution est différente de celle susmentionnée. 

J'ai été en mesure de corriger (ou plutôt de contourner) l'erreur en définissant le Build Système à hérité (via Fichier> Paramètres de l'espace de travail)

Une autre chose intéressante à noter est que l'erreur de signature ne serait pas si je construisais sur un périphérique réel (c’est-à-dire avant de modifier le Build System to Legacy). Cela ne se produirait que lors de la construction à l'aide du fichier simulateur et uniquement sur Xcode 10 beta 3, 4 et 5.

Lien vers le fil de discussion d'origine: https://forums.developer.Apple.com/thread/105537

7
Lachezar

Cette erreur est également affichée lorsque la cible de déploiement de votre extension Aujourd'hui est plus récente que l'application parent. Ils doivent être les mêmes.

L'application iOS est définie sur 10.0 et l'extension Today ajoutée, qui est automatiquement définie sur 11.4. Cela a provoqué l'erreur à apparaître. Changer simplement la cible de déploiement de la cible d’extension sur 10.0 a résolu le problème.

4

J'ai eu cette erreur lorsque les groupes d'applications n'étaient pas configurés correctement sur tous mes identifiants d'applications sur le portail de développeur. Par conséquent, les groupes d'applications dans l'application ne fonctionnaient pas correctement et le fichier binaire pour l'extension ou l'application Watchkit ne pouvait pas être signé.

3
Roland Keesom

J'avais ce problème lorsque j'ai migré vers Xcode 10 et que j'ai réussi à le réparer en mettant à jour les architectures dans "Paramètres de construction"> "Architectures valides" pour la cible Watch à 

$ (ARCHS_STANDARD)

Ce fil m'a beaucoup aidé: https://forums.developer.Apple.com/thread/107563

2
Adriana Pineda

Curieusement, j'ai dû supprimer le dossier des produits de mon projet afin de corriger cette erreur. Xcode s'est écrasé puis, après sa réouverture, a fonctionné à merveille!

2
Ben Aubin

J'ai eu cette erreur en ayant une autre erreur de temps de compilation dans mon code.

Ma nouvelle cible n'a jamais été construite auparavant.

Alors j'ai pensé que je corrigerais cette erreur en premier. Mais il s'est avéré que la correction de l'autre erreur permettait à Xcode de construire la cible et de réparer l'autre erreur elle-même.

0
fl034

J'ai eu cette erreur après avoir ajouté une Copy Files Build Phase à la cible principale de l'application.

Copier les fichiers
Destination: Absolute Path
Chemin: /Applications
Fichier: MyApp.app

Cela a fonctionné la première fois que j'ai exécuté l'application.

Lors des exécutions suivantes, Xcode a commencé à se plaindre de la non-concordance des certificats.

La suppression de la phase de construction de Copier les fichiers corrige l'incompatibilité des certificats. Je cherche toujours un moyen de copier des fichiers sans l'erreur.

Liens de même problème: 

0
pkamb