web-dev-qa-db-fra.com

Impossible de déployer une application sur un appareil ios 8

Je viens de mettre à jour un iPad Mini avec iOS 8 et je ne peux soudainement pas déboguer mon application avec XCode 6.0.1 . L'erreur dans Xcode est App installation failed avec An unknown error has occurred.. Sur l'appareil, l'application reste grisée.

Essayé de :

  • supprimer l'application d'ipad (fonctionnait auparavant)
  • Réinitialisation logicielle et redémarrage de l'appareil 
  • Supprimer les données dérivées et nettoyer
  • Redémarrez le mac 
  • réinstaller xcode
  • changer l'identifiant du paquet et le nom du produit
  • Recréer les certificats de développement et les profils d'approvisionnement

Avec iOS 6 et iOS 7, les appareils fonctionnent bien, vous pouvez également déboguer d’autres projets, mais pas celui-ci, alors je commence à désespérer. 

Une idée ? 

Journal de la console:

23/09/14 18:24:16,617 Xcode[421]: createShadowPath (thread 0x12a2f6000): returning: /var/folders/lq/1z47wljj77gbhhrhc9z_yylw0000gn/C/com.Apple.DeveloperTools/6.0.1/Xcode/942f46185227b6e098ea41a4548a0649/e269ac837383a4b805c1e212d18ffe36483ab24a/TDev.app
23/09/14 18:24:16,617 Xcode[421]: createSiblingInPath (thread 0x12a2f6000): returning: /var/folders/lq/1z47wljj77gbhhrhc9z_yylw0000gn/C/com.Apple.DeveloperTools/6.0.1/Xcode/942f46185227b6e098ea41a4548a0649/e269ac837383a4b805c1e212d18ffe36483ab24a/ManifestCache.plist
23/09/14 18:24:16,690 Xcode[421]: _AMDeviceCopyInstalledAppInfo (thread 0x12a2f6000): no app info
23/09/14 18:24:16,693 Xcode[421]: AMDeviceSecureInstallApplicationBundle (thread 0x12a2f6000): unable to get installed app info, falling back to old skool install
23/09/14 18:24:16,693 Xcode[421]: AMDeviceSecureInstallApplicationBundle (thread 0x12a2f6000): Blasting the bundle over to the device in an old skool way
23/09/14 18:24:27,005 Xcode[421]: AMDErrorForMobileInstallationCallbackDict (thread 0x114564000): GOT AN ERROR 0xe800003a
23/09/14 18:24:27,032 Xcode[421]: SZConduit: _MonitorResultDispatchFunction:140 (0x0x114564000): Got error from service: InstallationFailed
23/09/14 18:24:27,033 Xcode[421]: _AMDeviceTransferAndInstall (thread 0x12a2f6000): SZConduitSendPathWithPreflight failed: 0xe8008001
23/09/14 18:24:27,051 Xcode[421]: writeDictToFile:1258 ==== Successfully wrote Manifest cache to /var/folders/lq/1z47wljj77gbhhrhc9z_yylw0000gn/C/com.Apple.DeveloperTools/6.0.1/Xcode/942f46185227b6e098ea41a4548a0649/e269ac837383a4b805c1e212d18ffe36483ab24a/ManifestCache.plist
23/09/14 18:24:27,053 Xcode[421]: AMDeviceSecureInstallApplicationBundle (thread 0x12a2f6000): returning 0xe8008001

Modifier:  

Il semble que la régénération des certificats était la solution mais après Clean, un dossier de construction propre était également nécessaire, ce qui a résolu le problème (du moins pour le moment).

16
Templar

Ajoutons simplement (et merci à tout le monde pour les conseils donnés ici) que systématiquement trouver la cause de ceci était la clé pour moi pour résoudre ce problème. 

Utiliser la fenêtre «Périphériques» dans Xcode6 pour ensuite vous connecter à l'iPhone branché vous permet d'afficher le journal en direct - une fois que vous avez sélectionné l'iPhone, cliquez sur la petite icône en forme de flèche vers le haut . Dans mon cas, le résultat était tel qu'indiqué ci-dessous, indiquant clairement que «Échec de la vérification de la signature de code…» de l'un de mes frameworks groupés (personnalisés) était au cœur du problème.

Cela m’a amené à vérifier et à découvrir qu’il n’y avait rien à faire avec des certificats obsolètes (tout était à jour) ni avec les fichiers de construction DerivedData ou temporaires restants (bien que ce soit toujours bon de faire le nettoyage!).

C’était le fait que «CFBundleExecutable» de ma structure personnalisée avait une faute de frappe - la signature était donc en réalité une erreur. Cela n’est pas immédiatement signalé dans Xcode - même si la case "Code signé sur copie" est cochée pour vos infrastructures intégrées. Essayez de signer un framework séparément sur la ligne de commande et cela vous le dira!

Jul 13 09:40:43 Tims-iPhone installd[2302] <Notice>: 0x10048c000 -[MIClientConnection _doBackgroundInstallationForPath:withOptions:completion:]: Install of "/var/mobile/Media/PublicStaging/miin.app" type Developer requested by streaming_Zip_conduit (pid 2303)
Jul 13 09:40:43 Tims-iPhone installd[2302] <Notice>: 0x10048c000 -[MIInstaller performInstallationWithError:]: Installing <MIInstallableBundle ID=com.timlukins.miin; Version=1, ShortVersion=1.0>
Jul 13 09:40:44 Tims-iPhone profiled[2107] <Notice>: (Note ) MC: Provisioning profiles changed
Jul 13 09:40:44 Tims-iPhone installd[2302] <Error>:  SecTrustEvaluate  [leaf CriticalExtensions IssuerCommonName]
Jul 13 09:40:44 Tims-iPhone installd[2302] <Error>:  SecTrustEvaluate  [leaf CriticalExtensions IssuerCommonName]
Jul 13 09:40:44 Tims-iPhone installd[2302] <Error>: unrecognized status -67049 from codesigning library
Jul 13 09:40:44 Tims-iPhone installd[2302] <Error>: 0x10048c000 -[MICodeSigningVerifier performValidationWithError:]: 188: Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.Apple.mobile.installd.staging/temp.J7tWkl/extracted/miin.app/Frameworks/libmiincore.framework identifier = com.timlukins.libmiincore type = Framework> : 0xe8008001 (Unknown error)
Jul 13 09:40:44 Tims-iPhone installd[2302] <Error>: 0x10048c000 -[MIInstaller performInstallationWithError:]: Verification stage failed
Jul 13 09:40:44 Tims-iPhone streaming_Zip_conduit[2303] <Error>: 0x100484000 __MobileInstallationInstallForLaunchServices_block_invoke240: Returned error Error Domain=MIInstallerErrorDomain Code=13 "Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.Apple.mobile.installd.staging/temp.J7tWkl/extracted/miin.app/Frameworks/libmiincore.framework identifier = com.timlukins.libmiincore type = Framework> : 0xe8008001 (Unknown error)" UserInfo=0x12ee1fa30 {LibMISErrorNumber=-402620415, LegacyErrorString=ApplicationVerificationFailed, SourceFileLine=188, FunctionName=-[MICodeSigningVerifier performValidationWithError:], NSLocalizedDescription=Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.Apple.mobile.installd.staging/temp.J7tWkl/extracted/miin.app/Frameworks/libmiincore.framework identifier = com.timlukins.libmiincore type = Framework> : 0xe8008001 (Unknown error)}
Jul 13 09:40:44 Tims-iPhone streaming_Zip_conduit[2303] <Warning>: ERROR: MobileInstallationInstallForLaunchServices returned nil
Jul 13 09:40:44 Tims-iPhone streaming_Zip_conduit[2303] <Warning>: __dispatch_source_read_socket_block_invoke:203: Failed to install application at file:///var/mobile/Media/PublicStaging/miin.app/ : Error Domain=LaunchServicesError Code=0 "The operation couldn’t be completed. (LaunchServicesError error 0.)" UserInfo=0x12ed20140 {Error=ApplicationVerificationFailed, ErrorDetail=-402620415, ErrorDescription=Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.Apple.mobile.installd.staging/temp.J7tWkl/extracted/miin.app/Frameworks/libmiincore.framework identifier = com.timlukins.libmiincore type = Framework> : 0xe8008001 (Unknown error)}
14
tiluki

Je viens d'être touché par cela avec Xcode 7.2. En regardant le journal de la console du périphérique, vous avez identifié un framework tiers dans CocoaPods. J'ai fait une "mise à jour de pod" et tout va bien maintenant.

8
EPage_Ed

Mon expérience pour trouver une solution à ce que ça vaut ... Xcode 7.3

J'avais une gousse très ennuyeuse qui n'était plus utilisée, alors je me suis assuré qu'elle était retirée des cadres. Suivant - CocoaPods s'est plaint des Frameworks utilisés - alors assurez-vous que j'utilise le dernier Ruby que j'ai (2.1.2 dans mon cas), puis procédez comme suit:

  1. Pods mis à jour
  2. 'Produit' -> 'Nettoyer'
  3. Opt 'Produit' -> 'Nettoyer'
  4. Supprimé toutes les données dérivées

La solution a fonctionné - une chose que j'ai cependant remarquée - lorsque j'ai essayé cette application, une erreur d'autorisations s'est produite lors de l'utilisation du produit Opt -> "Nettoyer". D'où la "suppression" de toutes les données dérivées, plutôt que seulement les projets ...

Aucune idée de pourquoi cela a fonctionné, mais je pensais partager si cela pouvait aider quelqu'un.

7
Stewart

Utilisez-vous une bibliothèque externe ou un SDK? Vous avez peut-être une bibliothèque qui ne supporte pas iOS 8. 

Si j'étais vous, je créerais un nouveau projet, uniquement à des fins de test, avec une seule vue, et vérifierais s'il fonctionne sous iOS 8 avec mon Xcode sur mon ordinateur. Si tout fonctionne correctement, le problème ne concerne que votre projet actuel. 

4
Leandro

Ill suffit d'exécuter à nouveau "pod update" lors de l'utilisation de Cocoapods. Testé avec Xcode 7.3. 

1
derdida

J'ai perdu plus de 3 jours, maintenant je résous le même problème . Dans mon cas, mon projet a des frameworks tiers (mon cas est Dropbox).

Il est probable que Xcode nécessite la signature de chaque infrastructure intégrée à l’aide de "phases de construction/copie de fichiers" . Ou le code incorporé est trop ancien pour être copié dans la génération Xcode.

1
Yasuo Shimizu

J'ai eu le même problème et il était lié au processus d'approvisionnement. Mon projet était connecté à deux comptes de développeur et sur l'un d'entre eux avaient des certificats expirés. 

Pour résoudre le problème, je devais supprimer l'un des comptes et choisir l'option «Identité de signature» spécifique dans «Paramètres de construction». Je ne sais pas si c'est une exigence, mais au cours de ce processus, j'ai supprimé les données dérivées du projet.

1
ABeanSits

Dans mon cas, je viens de mettre à jour des cosses de cacao et cela a fonctionné. Veuillez mettre à jour les pods et vérifiez à nouveau.

1
Ghulam Rasool

Dans mon cas, le problème était que je n'avais plus d'espace sur l'appareil. J'espère que ça aide quelqu'un d'autre.

1
dchakarov

Je viens de supprimer les frameworks tiers que j'utilisais. Puis les ré-installés. Cela a résolu mon problème. J'espère que ça aide quelqu'un.

0
red55

Si quelqu'un utilise les extensions de notification d'utilisateur ou le contenu dans iOS 10, puis supprime les dossiers/fichiers générés par XCode. Vous pouvez obtenir la même erreur: Échec de l'installation de App avec Une erreur inconnue s'est produite

Accédez ensuite aux cibles de votre projet et supprimez la cible générée par l'extension/le contenu. Parfois, si vous essayez de faire cela, XCode va planter. Je passe environ une heure à essayer de comprendre pourquoi ... par exemple: Nettoyage des dossiers de construction et des dossiers de données dérivés. Ce qui a été résolu, c’était de supprimer les UserNotification Frameworks liés à ce schéma. Ce n'est qu'alors que j'ai pu supprimer ledit schéma.

Dans mon cas, je n'avais besoin que de l'extension, alors j'ai supprimé la cible surlignée en gris. 

 enter image description here