Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between "Any iOS SDK" and "Debug" in Xcode 4 Code Signing?

In Xcode 4's Build Settings, there are 2 places to enter a provisioning profile for each build type. The first is "Ad Hoc", "Debug" and "Release". Each of these has another place to put in a provisioning profile called "Any iOS SDK". Do I need fill in both? What's the difference between these?

enter image description here

like image 622
nevan king Avatar asked May 27 '11 14:05

nevan king


2 Answers

I believe they are an artifact with Xcode's versions.

Delete them by editing your Xcode project. It duplicates the amount of work if they differ in my experience. I've had to change both to the same profile, otherwise the build fails.

Xcode will regenerate the project settings and you'll only have your debug, release, and adhoc.

Guide on Any iOS SDK cleanup

Delete these lines to get rid of Any iOS SDK Remove the lines highlighted above in the Xcode project file.

No Any iOS SDK artifacts Now there's half as many settings to change.

like image 59
Paul Solt Avatar answered Sep 19 '22 01:09

Paul Solt


The XCode build tools use the most specific relevant setting, so if you've set the "Any IOS SDK" value under Debug, you don't need to set the Debug setting, and so on.

That interface is (or was) there, I believe, to make it evident that there are ways to customize your provisioning profile for specific SDKs. If the only option was "Any IOS SDK", it would be redundant to the line above.

On the other hand, having a non-generic default would also likely confuse users, who would be posting on Stack Exchange, asking "Why are there lines for both Ad Hoc and IOS 4.2 SDK?"

like image 27
Seamus Campbell Avatar answered Sep 19 '22 01:09

Seamus Campbell