0

When I built and compressed my app for submitting for Apple's review, I am displayed with the warning:

The Info.plist in the package must contain the CFBundleShortVersionString key.

This is not contained in my Info.plist. Any help on how I can fix this?

Jones
  • 661
  • 1
  • 5
  • 6

3 Answers3

0

The CFBundleShortVersionString in your Info.plist identifies the version string for your app, such as 1.0 or 3.5.1. As your error implies, it is required in the Info.plist.

Simply open your project's Info.plist, choose Add Row, and enter CFBundleShortVersionString, which may change to "Bundle versions string, short". Set the type to String and the value to a version identifier for your app; use 1.0 if it's the first version. Now re-archive.

Info.plist entry

You should also be able to change the version string by going to the General tab of your target in Xcode. Target>General>Version

Community
  • 1
  • 1
BradzTech
  • 2,755
  • 1
  • 16
  • 21
  • I have added the row and the type of string simply states string. Not sure what specific category I should make it. In the open blank I have inputed 1.0 since it is my first version and I saved and compressed once more with the same error. Am I missing something? – Jones Jun 21 '15 at 19:16
  • What do you mean by "specific category"? Does setting Project > General > Version work? – BradzTech Jun 21 '15 at 19:43
  • A bit confused what you mean. I have identified it as "1" in the Bundle versions string, short with the word "string" unhighlighted. – Jones Jun 21 '15 at 23:08
  • Compare yours with the screenshots I just added, maybe try `1.0` instead. Any differences? – BradzTech Jun 22 '15 at 00:10
  • Scratch that I was able to fix it after constant trial and error but what is really pissing me off is this provisional profile error: ERROR ITMS-90174: "Missing Provisioning Profile - iOS Apps must contain a provisioning profile in a file named embedded.mobileprovision." Which is exactly what I did but where would I place it? Like I placed it inside my project folder but is there a specific location its supposed to be at? – Jones Jun 22 '15 at 04:33
  • Go to Build Settings for your target. Find "code signing" and next to provisioning profile, select the correct profile. – BradzTech Jun 22 '15 at 11:28
  • I have done exactly that with same error. For underneath in the Debug and Release areas, it is a mix with distribution and developer. Are they only supposed to be one of the following options and not both? – Jones Jun 22 '15 at 16:57
  • Should have specified, not Code Signing Identity, but Provisioning Profile. Make sure it is a valid provisioning profile. Also try going to Xcode preferences > Accounts > View Details > Refresh. – BradzTech Jun 22 '15 at 18:03
  • I have done that as well it keeps stating I need a provisioning profile called embedded.mobileprovision unfortunately. – Jones Jun 22 '15 at 19:22
  • Sorry I couldn't help you, but this is clearly a [different question](http://stackoverflow.com/q/30972472/4967340) (which you have already opened!). – BradzTech Jun 22 '15 at 20:55
0

Swift3

Add Bundle versions string, short to info.plist like this Image:

enter image description here

Hamed
  • 1,678
  • 18
  • 30
0

I had a similar problem and it turns out that Xcode wiped out the build number in an app extension I created. If you have any app extensions make sure that the version and build number are present.

gordoneliel
  • 86
  • 2
  • 7