CodeSign error: a valid provisioning profile is required problem in XCode

The above error pop-ups when you try to build iPhone application for the device. It means that the provision name in XCode project settings does not match .provision file installed in XCode Organizer (device manager). Usually this happens when you have downloaded XCode project created by someone else.

It should be possible just to go to XCode -> Project -> Project settings and chose a valid code signing profile (Code signing -> Code signing identity drop down should have been populated from the choices available in XCode organizer). However, it seems that there is a bug and always changing this setting does not have effect. Based on reports, it looks XCode project setting updater is confused about something and does not update the setting correctly.

The hardcode workaround is to edit your XCode project .xcodeproj file manually. You do not need to close down XCode for this (it will automatically ask to reload after the file is saved). You may see duplicate entries of  XCBuildConfiguration. You need to hunt down one with old (incorrect) values and manually copy-paste in correct values. You can get the correct values from XCode organizer.

For example, I had to edit in :

	CODE_SIGN_IDENTITY = "iPhone Developer: Mikko Ohtamaa (XXXYYY)";
	"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: Mikko Ohtamaa (XXXXYYY)";
...
                PROVISIONING_PROFILE = "7572BAC6-4F0C-46D3-B96F-XXXXXYYY";
	"PROVISIONING_PROFILE[sdk=iphoneos*]" = "7572BAC6-4F0C-46D3-B96F-XXXXXYYYY";

manually to the file, replacing the old values for these settings. Note that values may be in many lines.

Hope this helps someone.

\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+

One thought on “CodeSign error: a valid provisioning profile is required problem in XCode

  1. Changing the certificate for the target, not the project, worked for me. Choose the application under Targets in the Groups & Files tree on the left and change. Why there is 2 places for the code signing settings is beyond my understanding.

Leave a Reply

Your email address will not be published. Required fields are marked *