How to determine which Xcode was used to develop from code

In my role as an iOS developer and manager, I come across situations where I get full source code from our freelancers and associates. Whenever there is the latest version of Xcode released we get keen on knowing which Xcode was last used to develop the app?

Why this question is important?

The need to know which Xcode was used to develop the app from source code is important because

  • If you are automating pipelines you might want to extract the latest compatible version from source code rather than relying on manual info
  • Freelancers and vendors usually try to avoid porting to the latest Xcode if it has just been released fearing that some UI components or SDKs might break, but as a customer you want it updated to latest Xcode.

Ways to determine which Xcode was used to develop from code

Check DTXcode key in info.plist

If the vendor has provided you with a .ipa file you need to do the following steps

  • Change the extension to .zip and unzip the file and right click on reluting .app file
  • Right click to “Show Package Contents.”
  • Go to info.plist file and open it with sublime or text editor of your choice
  • Search for
<key>DTXcode</key>
<string>0611</string>
  • The DTXcode value will tell you the Xcode used 0611 means 6.1.1

Check CreatedOnToolsVersion in project.pbxproj

If you have the project source code then you can open the project.pbxproj file and look for CreatedOnToolsVersion.

Note:- Created on tools version provides you with the Xcode version which was used to create the project, not the last one used.

Check xcscheme

If you have access to the source code then you can open the xcscheme file. It is located at

YourProject.xcodeproj/xcshareddata/xcschemes/YourSchema.xcscheme

It will show the last updated version.

Hope it helps !!!

A pat on the back !!