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 Image Follow me on Twitter Image Follow me on Facebook Image Follow me Google+