Pour distribuer l'application à nos testeurs, nous utilisons Xcode, à l'aide du processus suivant:
Mais avec Xcode 6, ce flux de travail a été légèrement modifié. Je peux toujours sélectionner l'option de distribution Ad-Hoc, mais je ne peux pas sélectionner le profil d'approvisionnement souhaité. Cela ne nous donne aucun contrôle sur le certificat de signature utilisé ni sur la configuration du profil d'approvisionnement (nous utilisons les notifications Push).
Par défaut, iPhone distribution
identité de signature est utilisée et un type de profil d'approvisionnement XC Ad Hoc
est généré. Vous pouvez le voir sur l'image ci-dessous: Si vous cliquez sur la flèche près du profil de provisioning, le dossier contenant les profils de provisioning s'ouvre.
Donc ma question est:
Existe-t-il un moyen dans Xcode 6 de sélectionner le profil d'approvisionnement utilisé avec la distribution ad hoc?
Merci!
J'étais confronté au même problème, résolu à l'aide du script de l'outil "xcodebuild" en ligne de commande, qui est préinstallé avec XCode6 (il n'était pas nécessaire de réinstaller XCode5).
http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/
Script en terminal:
xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile 'Provisioning Profile Name'
J'ai eu un problème similaire lors de la soumission à l'App Store. J'ai créé une archive, puis cliqué sur "Soumettre" et Xcode souhaitait signer automatiquement avec le profil d'approvisionnement par défaut "XC com. *" À la place du profil explicite qu'il possédait déjà.
Pour résoudre ce problème, je viens de recréer le profil sur le portail de développeur Apple:
1) Accédez à developer.Apple.com et trouvez le profil d'approvisionnement de distribution que vous souhaitez utiliser.
2) Sélectionnez-le, cliquez sur "Modifier", renommez le profil et cliquez sur "Générer".
3) Téléchargez le profil d'approvisionnement sur le bureau et faites-le glisser sur l'icône Xcode 6.
4) Redémarrez Xcode 6.
5) Ouvrez la fenêtre de l'organiseur et cliquez sur "Soumettre" dans l'archive que vous avez construite. Xcode choisira automatiquement votre profil explicite au lieu du profil générique.
Une fois dans l’organisateur
Bien entendu, vous devez avoir généré, téléchargé et installé le profil de provisioning ad hoc.
Il semble que le dernier profil d'approvisionnement généré gagne pour le moment. Ainsi, vous pouvez simplement générer à nouveau le profil que vous souhaitez et le télécharger. Xcode l'utilisera.
Une approche légèrement meilleure: définissez le profil prov souhaité dans votre cible et utilisez la ligne de commande pour créer votre ipa, cela fonctionne également.
Voici le script que j'utilise:
#!/bin/sh
# Current as working as of 2014/09/22
# Xcode 6
OUTPUTDIR="$HOME/build"
APPNAME="your-app"
SCHEME="your-app"
APP_WORKSPACE="$HOME/Path/To/your-app.xcworkspace"
rm "$OUTPUTDIR/$APPNAME.ipa" #deletes previous ipa
xcodebuild -workspace "$APP_WORKSPACE" -scheme "$SCHEME" archive -archivePath "$OUTPUTDIR/$APPNAME.xcarchive"
xcodebuild -exportArchive -exportFormat ipa -archivePath "$OUTPUTDIR/$APPNAME.xcarchive" -exportPath "$OUTPUTDIR/$APPNAME.ipa"
et mes réglages:
Dans Xcode 6 (au moins 6.1 que j'utilise maintenant) lorsque vous effectuez l'exportation pour ad hoc, xcode 6 analyse automatiquement s'il existe un profil d'approvisionnement contenant tous les périphériques enregistrés dans le compte de développeur et qui correspond en même temps à l'ID de l'ensemble. . Si non, il utilisera le profil de provision XC. Par conséquent, si vous souhaitez utiliser votre propre profil, par exemple, aux fins de la notification Push, vous devez sélectionner tous les périphériques de votre profil sur le portail de développeurs Apple. J'imagine que c'est la raison pour laquelle certaines personnes recréer un profil fonctionneraient et d'autres non.
d'ailleurs, script d'utilisation peut exporter et télécharger vers testflight, mais l'appareil ne peut tout simplement pas le télécharger. probablement quelque part je me suis trompé. si quelqu'un sait pourquoi, merci de me le faire savoir. tks
Je ne pouvais pas comprendre cela non plus. J'en ai eu marre lors de la soumission à l'AppStore, où le profil par défaut était générique.
J'ai fini par construire Xcode 6, puis de revenir à la fenêtre Organiseur de Xcode 5 pour la soumission. Ainsi, vous serez invité à choisir un profil avec lequel signer.
Cela a fonctionné pour moi:
Vous devriez maintenant voir le nom du profil d'approvisionnement approprié.
J'ai une solution de contournement pour cela qui fonctionne pour moi.
J'ai Xcode 6 et Xcode 5.1.1 installés, Xcode 6 est dans Applications et Xcode 5.1.1 est dans un autre répertoire. Quand je veux faire une construction, j'utilise Xcode 6 pour créer l'archive. Mais vous pouvez également voir l'archive créée dans Xcode 5.1.1. J'utilise donc Xcode 5.1.1 pour distribuer le fichier .ipa ad hoc à l'aide du profil d'approvisionnement que je souhaite utiliser. Donc construisez en utilisant Xcode 6 mais distribuez en utilisant Xcode 5.1.1.
La réponse de @MrPatol n'a pas fonctionné pour moi. Mon scénario de travail pour Xcode 6.3.2
Dans le centre des membres -> Profils de provisioning iOS
Dans l'utilitaire de configuration iPhone -> Profils de provisioning
In Xcode -> Organizer
Voici les deux points clés qui ont résolu le problème pour moi.
Xcode trouvera ensuite le profil de provisionnement correct en faisant correspondre l'identifiant de l'application avec l'identifiant de l'ensemble de l'application.
En fait, vous devez créer un nouveau profil de distribution, spécifique au déploiement ad hoc. Cela se trouve dans le centre des membres classique, mais il s’agit d’un nouveau type de certificat.
Vous pouvez ensuite sélectionner les appareils à utiliser pour tester l’application comme vous le feriez avec un profil de développeur.
Et le certificat nouvellement créé sera disponible lorsque vous exporterez votre package à partir de l'Organiseur de la manière habituelle.
Vous pouvez également utiliser la solution TestFlight fournie par Apple avec iOS 8 pour permettre à votre utilisateur d’avoir accès à la version préliminaire.
J'ai eu le même problème. Finalement, je l'ai résolu en régénérant le profil que je souhaitais utiliser dans Xcode 6, y compris tous les périphériques que j'ai enregistrés sur mon compte iOS Dev. peut effectuer l’exportation ad hoc avec Xcode 6 sans utiliser de script. J'espère que ça aide.
xcodebuild -exportArchive -archivePath $ Archive_Path -exportPath $ LOCAL_PACKAGE_DIR -exportOptionsPlist $ Export_Plist_Path
le fichier optionPlist est comme ça,
_<dict>
<key>teamID</key>
<string>MYTEAMID123</string>
<key> teamID </key>
<string>app-store</string>
<key>uploadSymbols</key>
<true/>
</dict>
<plist>
_
app-store, entreprise, ad-hoc, développement alternatif
Error Domain = IDEDistributionErrorDomain Code = 14 "Aucun périphérique applicable n'a été trouvé." UserInfo = {NSLocalizedDescription = Aucun périphérique applicable trouvé.}
C'est un problème de Ruby. Essayez ce script shell, xcbuild-safe.sh
_xcbuild-safe.sh xxxxNormalOptionsInXcodebuild bla...
_
xcbuild-safe.sh: ligne 62: Shell_session_update: commande introuvable
C'est quoi l'enfer _Shell_session_update
_? Laissez-nous travailler autour de cela. Définissez simplement une fonction avant la vraie commande xcodebuild, à savoir la ligne 60 ou 61.
_function Shell_session_update() { :; }
_
Cela fait un moment que je suis coincé avec ceci , mais en utilisant Crashlytics résolu, construire distribué en utilisant le profil sélectionné dans les paramètres de construction de votre projet Xcode.
j'espère que ça aide quelqu'un.
Presque le même problème. Après avoir créé une archive à distribuer (Produit> Archive), vous exportez l'archive (cliquez sur Exporter ...) et choisissez "Enregistrer pour le déploiement en entreprise". Ensuite". Vous sélectionnez ensuite la valeur par défaut "Équipe de développement" (par exemple, le nom de l'organisation) et cliquez sur "Choisir". Enfin, une vue récapitulative vous sera présentée, qui répertorie également le profil de provisioning que Xcode a automatiquement trouvé (peut-être créé à la volée) pour vous. Ceci PEUT être un profil de provisioning incorrect (généralement un profil de provision générique, comme "XC: *") et peut-être se produisant, car il existe déjà un profil de provisioning de générique sur le portail des développeurs. Le profil d'approvisionnement en caractères génériques PEUT être utilisé par d'autres projets plus anciens et il n'est peut-être pas judicieux de supprimer simplement le profil d'approvisionnement en éléments génériques du portail des développeurs.
J'ai utilisé un ticket d'assistance pour cela et je n'ai récupéré que ce lien https://developer.Apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringPushNotifications/ConfiguringPushNotifications.html#//Apple_ref/doc/uid/TP40012582-CH32-SW1 . Pas vraiment une grande aide.
J'ai trouvé que la solution de MrPatol fonctionne également pour le déploiement en entreprise bien et résout le problème pour nous. J'ai d'abord ouvert une session sur le portail des développeurs et créé manuellement un profil de provisionnement adapté à mon application. Ensuite, téléchargez et installez le nouveau profil de provisioning créé manuellement.
Dans xcode 7, je ne pouvais pas choisir le provisioning ad hoc via
Organiseur -> Transférer vers l'App Store & Organizer -> Valider
Mais je pourrais choisir via Organizer -> Export
Edité:
Le téléchargement de l'application après l'exportation pour adhoc vers App Store pour TestFlight a entraîné un autre problème discuté ici . Donc, la solution à ces deux problèmes en est un. Créez un provisioning AppStore pour pouvoir le sélectionner via l'organisateur et utiliser testFlight en le téléchargeant sur un magasin d'applications.