J'ai Xcode9 installé sur ma machine OSX. J'utilise la ligne de commande xcodebuild
pour signer mon application qui utilise bien sûr les derniers outils commalines basés sur Xcode9.Comment utiliser la ligne de commande xcodebuild pour faire une signature automatique avec Xcode9?
Ce qui suit est la façon dont je suis en train de signer mon application:
xcodebuild -project "MyProject.xcodeproj" -scheme "MyProject" -sdk "iphoneos" -configuration Release PROVISIONING_PROFILE="MyProject_ProvisioningProfile" DEVELOPEMENT_TEAM="MY_TEAM_ID"
Mais, il donne l'erreur suivante.
Code Signing Error: Provisioning profile "profile_name" is Xcode managed, but signing settings require a manually managed profile.
Code Signing Error: Code signing is required for product type 'Application' in SDK 'iOS 11.0'
Mais quand je construis en utilisant la sélection IDE interface utilisateur Xcode9 "signature automatique", cela fonctionne. Je veux répliquer la même chose en utilisant la ligne de commande xcodebuild
. J'ai lu qu'avec Xcode 9 installé, nous pouvons faire une signature automatique à partir de la ligne de commande, tout comme Xcode UI fait.
Question:
Comment dois-je modifier commande xcodebuild
faire signature automatique juste la façon dont il est fait sur l'interface utilisateur outil Xcode?
Je comprends de official documentation que l'on devrait préférer la signature automatique. Mais comment faire avec xcodebuild
ligne de commande
En regardant this discussion, j'ai essayé de le basculer sur le fichier project.pbxproj
en utilisant sed
.
sed -i '' 's/ProvisioningStyle = Manual;/ProvisioningStyle = Automatic;/' <ProjectName>.xcodeproj/project.pbxproj
Mais cela n'a pas aidé
Dans votre réponse, pouvez-vous modifier la même commande 'xcodebuild' que dans la question? –
alors je ne devrais plus spécifier le profil d'approvisionnement dans la commande 'xcodebuild'? –
'xcodebuild -project" MonProjet.xcodeproj "-scheme" MonProjet "-sdk" iphoneos "-configuration Libérer PROVISIONING_PROFILE =" MonProjet_ProvisioningProfile "DEVELOPEMENT_TEAM =" MY_TEAM_ID "export_xcargs:" -allowProvisioningUpdates "' comme ça? –