Cela a déjà été demandé, mais les réponses aux questions précédentes ne résolvent pas mon problème.
J'essaie de créer une application simple Hello World appelée (CalculatorBrain) à partir des cours iTunes U de Stanford. Je peux bien l'exécuter dans le simulateur, mais j'aimerais pouvoir l'obtenir sur mon iPhone 4S.
Je synchronise mon iPhone 4S via iTunes sur mon ordinateur Windows. Toujours avoir. Je me suis dit que je devrais énumérer ce détail.
Quoi qu'il en soit, revenons à mon Macbook (Mountain Lion). J'utilise le dernier XCode 4.6.2 (4H1003) et mon iPhone est aussi le plus récent, 6.1.3 je crois.
Je suis allé sur le portail de provisioning sur la page des développeurs Apple. J'ai ajouté mon 4S. Je l'ai appelé JohnSmith et lui ai donné le code UDID du téléphone.
En Xcode, j'ai ouvert l'Organiseur, Périphériques est mis en surbrillance par défaut. J'ai mis le code d'authentification dans mon iPhone et je l'ai branché sur mon Macbook. Les appareils trouvent mon iPhone. Si je clique sur Profils de provisioning et que j'essaie d'ajouter un périphérique à un portail de provisioning, un message «Un périphérique avec un numéro existe déjà dans cette équipe». Génial. Je sais que c'est ajouté à coup sûr alors. Toutes les bonnes nouvelles jusqu'à présent.
Dans mon application Hello World, mon identifiant de paquet est CalculatorBrain-Info.plist: "com.JohnSmith.CalculatorBrain". Le nom d'affichage de l'ensemble est "$ {PRODUCT_NAME}" et le fichier exécutable est "$ {EXECUTABLE_NAME}" si cela est important.
Dans le navigateur, si je surligne mon projet et que je fais apparaître les paramètres de construction, sous Identité de signature de code, je reçois les options ...
Ne signez pas le code
Sélecteur de profil automatique - Développeur iPhone - Distribution iPhone
Identités sans profils d'approvisionnement - Développeur iPhone: John Smith (R ............ K) - Distribution iPhone: John Smith (Y .......... ... 5)
Autre...
J'ai essayé tout cela. Je suppose que je suis supposé utiliser l'iPhone Developer: John Smith one ... mais cela signifie que c'est une identité sans profils de provisioning.
Que se passe t-il ici? Que dois-je faire pour que cela fonctionne?
Selon votre description, il semble que l'élément manquant soit de revenir à l'outil "Certificats, identifiants et profils", de générer un profil de provisioning de développement pour l'appID de votre application HelloWorld, puis d'installer ce profil sur votre développement machine. A un niveau élevé, il est composé des étapes suivantes:
L'élément de configuration de construction 'Code Signing Identity' que vous avez mentionné dépend en grande partie des paramètres de votre projet ainsi que des profils de provisioning disponibles sur votre ordinateur de développement. J'ai récemment répondu à une question liée de manière tangentielle 'Qu'est-ce qu'une identité de signature de code?' cela peut être utile pour voir quelles informations Code Signing utilise et comment vous pouvez vérifier que vous avez configuré votre machine de développement pour pouvoir signer votre projet par code.
... et maintenant, passons à des HOWTO plus spécifiques pour vous aider à résoudre votre question de signature de code:
Localisation de l'AppID du projet
Le code AppID définit de manière unique une application dans l'écosystème iOS et constitue l'une des choses que vous créez en premier lieu lors du démarrage d'un nouveau projet Xcode. Cet AppID est ce que vous devez inscrire dans l'outil "Certificats, identificateurs et profils" pour commencer à utiliser le provisioning.
Vérifier (ou installer) le AppID
Notez que l’appID doit être unique dans l’écosystème iOS - vous risquez d’obtenir une erreur si l’appID que vous avez sélectionné est déjà utilisé. Si tel est le cas, remplacez votre «ID de paquet» par quelque chose d'unique - veillez simplement à mettre à jour le paramètre «ID de paquet» dans votre projet Xcode pour qu'il corresponde à ce que vous avez choisi.
Création d'un profil d'approvisionnement de développement
Maintenant que l'ID de l'application est enregistré, vous êtes maintenant prêt à créer un profil d'approvisionnement de développement reliant votre ID d'application, votre certificat de développement et vos ID de périphérique de test.
Télécharger et installer le profil d'approvisionnement
Une fois le profil de provisioning généré, l’outil vous fournira un lien pour pouvoir télécharger
Configurer l'identité de signature de code
On dirait que vous savez déjà où cela se trouve, mais juste au cas où:
En théorie, vous voudriez utiliser l'option 'Sélecteur de profil automatique' qui tentera de faire correspondre votre AppID à un profil de provisioning installé, mais vous pouvez également faire défiler la liste et choisir un mappage spécifique de Bundle ID/AppId avec un certificat iOS.En outre, mon propre Xcode ne semble pas toujours prendre en compte les modifications apportées aux profils d'approvisionnement récemment installés. Il est difficile de savoir s'il s'agit simplement d'un caprice de ma propre installation Xcode ou d'un bogue dans Xcode. Quoi qu'il en soit, quitter et relancer Xcode semble déclencher une réindexation/actualisation des profils.
Quoi qu'il en soit, sélectionnez l'option qui correspond à votre AppId/BundleId et à votre certificat de développeur.
En supposant que le problème soit un profil de provisioning manquant/incomplet/expiré, cela devrait vous aider à vous mettre en route. Si ce n'est pas le cas, nous devrons analyser d'autres problèmes de paramètres ou de certificats susceptibles de déclencher votre opération de signature de code.
Assuming the problem was a missing/incomplete/expired Provisioning Profile, then this should help get you up and running. If not, we'll have to Dig into other potential settings or certificates issues that could be tripping up your Code Signature operation.
J'ai eu très genre de problème, essayé chaque option à ceux de la signature de code et la solution réelle à la mienne était la suivante: - Xcode redémarré. - "Actualiser à partir du portail de développeur" Ensuite, il suffit de "Définir le schéma actif" sur "iPhone (Petri)" à côté des boutons Exécuter et Arrêter.
Assurez-vous que les cibles sont cochées au lieu de projets.
Dans mon cas, l'appareil dispose de 3 profils de provision du même nom. Au cours du développement, j'ai mis à jour le profil de provision à quelques reprises et chaque fois qu'un nouveau profil mis à jour était ajouté au périphérique sans supprimer l'ancien. Donc, xcode a recherché le premier profil de provision qui était faux à ce moment-là et jeté une erreur à la face de moi…