CFBundleVersion Not Matching - ios

I'm attempting to upload an application to apple, and i keep receiving this error:
ERROR ITMS-90345: "Metadata/Info.plist Mismatch. The value for bundle_version in the metadata.xml file does not match the value for CFBundleVersion in 'App Name Here' [Payload/App Name.app]."
I can't seem to edit my CFBundleVersion in my plist so it matches, any thoughts???

You can click on your project file, then click on your target, and change in the general tab the version of your app.
What is important is that you should not have any spaces in the version, if the version that you specified in iTunesConnect is also without spaces.
I did get the same error because I had a trailing space in the version which was difficult to detect.

I just got the same problem. Looks like app store compares CFBundleVersion with the last one. The current one should be higher.
Example: current 2022.06.14 will be rejected if there is another build say 2022.07 already in the TestFlight.

If you have an app extension, make sure that the build number in the extension target is the same as in the app target.

Click on your project file(info.plist) then ensure that the MinimumOSVersion is either same as the previously submitted apps or higher. In my case, I lowered the MinimumOSVersion of my app accidentally. So after I changed it back to what it was before I was able to submit my app to Itunes Connect using application loader. You can also check for spaces in the version string if you wish and remove them.

Please check your CURRENT_PROJECT_VERSION after you change MARKETING_VERSION, or you can change CURRENT_PROJECT_VERSION to 1 (CURRENT_PROJECT_VERSION=1)

Related

iOS - Missing CFBundleIconName in Xcode 9.2

I am uploading build to release app using Xcode 9.2 built with iOS 11 SDK. Binary is archived and uploaded successfully, but I get the following email back.
Dear developer,
We have discovered one or more issues with your recent delivery for
"". To process your delivery, the following issues must be corrected:
Missing Info.plist value - A value for the Info.plist key
CFBundleIconName is missing in the bundle ''. Apps that provide icons
in the asset catalog must also provide this Info.plist key. For more
information see
http://help.apple.com/xcode/mac/current/#/dev10510b1f7. Once these
issues have been corrected, you can then redeliver the corrected
binary.
Regards,
The App Store team
I found a solution.
Missing CFBundleIconName in Xcode9 iOS11 app release
But i need little bit more. I don't want to use *.xcassets file for app icon. I want to use image in xCode project folder for app icon.
Is it possible in xCode 9.2? if yes then how?
Haven't seen this listed on any of the other posts but this was my issue.
Make sure to check the target membership of your assets directory! If you do not correctly link the membership here, you will get this same super-generic error(Apple should do something about the error messages).
The target membership should correlate directly to targets for which you are using the icons. For example, I use this single directory for both my main app, and watch app assets, you must specify this by selecting the appropriate member.
There is a direct option not to use app icon from Assets

Trying to re-upload app compilation to iTunes Connect

Alright, I'm trying to upload my first app to the App Store, at first it got rejected due to a simple bug, But I can't figure out how to re upload the fixed version to iTunes Connect. When I try to send it through Xcode ou Application Loader, I get the following error:
The bundle uses a bundle name or display name that is already taken.
The app's version is 1.0, the build number is 1. I can't figure out how to replace the older rejected compilation with the new one. Every time I try sending a new compilation, I get this error. I already tried changing the app's version and bundle numbers. I also can't make a new version or even delete the app from iTunes Connect.
I'm using Xcode 9.
I probably rejected the rejected build, so the app's status is "ready to send" again, like in the beginning.
The error you have mentioned, does not seem to be about the version, but rather the app name. Its been asked and answered already
For versioning :
Read the Technical note on Version Numbers and Build Numbers.
Specifically :
For every new build you submit, you will need to invent a new build
number whose value is greater than the last build number you used (for
that same version).
You you will have to bump your build number.
Turns out it was the app's name (Display name)! Looks like that if you compile it with a different display name than what's on iTunes Connect, it will get you that error!

How to Change BundleVersion to four non-negative integers in iOS

Now My BundleVersion is like 1.3.1, now I want to change it to 1.3.1.1, can someone tell me how to do it?
update: I searched the solution in the internet , and some one said adding an new key in plist 'sys-clientVersion',and set it to 1.3.1.1 . I tried that way but than the Xcode gave me an error:"ERROR ITMS-90060 : This bundle is invalid . The value of key CFBundleShortVersionString 1.3.1.1 in the info.plist file must be a period-separated list of at most three non - negative integers".'
This is my info.plist :
so , the 'Bundle versions string' equal to 'Version' in Identity, and the 'Bundle version' equal to 'Build' , and 'sys-clientVersion' is what i want show in app store , right~?
It's super easy go the iTunesConnect select your app, version and scroll down to General App Information there is a textfield under App Store Icon, it contains the version number say 1.3.1 you can change it to 1.3.1.1. Have a look at the following image.
P.S keep in mind that the version number should be incremented from previous one.
Edit:
For Xcode Error: ERROR ITMS-90060 while submitting the app check your "Bundle versions string, short" in info.plist file by right-clicking on it and open it as source-code. Search for CFBundleShortVersionString and confirm that the value shouldn't contain any space or non-integers.
I solved it by just adding sys-clientVersion key , and set your wanted version to the key (e.g 1.1.1.0). The most importent point is , just increase your current Version and Build ( in General - Identity) e.g 1.0.0->1.1.0. as normally . the sys-clientVersion now is showing in app store. and unrelated with Version or Build.

Invalid Binary issue while uploading iMessage Sticker App using XCode 8

I have created a StickerExtensionPack. Apparently, Apple is treating a sticker extension pack as just another app that needs to go in the Sticker Category, fair enough.
However, when I uploaded the binary, I was sent back an email saying that the binary is invalid, because of the following reason:
Invalid Messages Application Support - The MessagesApplicationSupport
folder is missing and you have LSApplicationLaunchProhibited set to
true in your Info.plist. Either rebuild your application using the
current public (GM) version of Xcode or remove the
LSApplicationLaunchProhibited key from your Info.plist and resubmit
your application. Invalid iMessage App - The bundle contains an
invalid implementation of iMessage support. Add
MessagesApplicationSupport/MessagesApplicationStub next to your
Payload directory in your IPA.
MessagesApplicationSupport/MessagesApplicationStub must match the
binary at TapTeach.app/TapTeach and have no post processing applied to
it.
I'm doing a simple sticker pack. I'm on XCode and can not find LSApplicationLaunchProhibited anywhere in the info.plist within the my files!
Any guidelines on how to resolve this will be helpful. Thanks.
Try these steps:
turn off Bitcode from "Yes" to "No"
Change the version to CURRENT_PROJECT_VERSION = 1.10.11.
You don't need to recreate your project, just change the version. I reran the build and it's currently "in review" in iTunes without any errors.
So far, the only way I have been able to work around this issue is to repeatedly delete and recreate the project until iTunes Connect accepts a build. And really, I'm not even sure if the project recreation is actually helping - it could be entirely random - as it still only works about 50% of the time and turning off Bitcode, as mentioned by the OP, did not help.
At least two out of the three sticker packs I am currently working on have had this problem (with Xcode 8.0 and 8.1), so it's befuddling how this cannot be more widespread. I have to assume it's something specific that's causing it, but I am not sure what. So I guess until a proper solution is found: try, try again.

Watch kit CFBundleVersion

Planning for watch kit integration
error: The value of CFBundleVersion in your WatchKit app's Info.plist (1) does not match the value in your companion app's Info.plist (2.0). These values are required to match.
Struck with above error.
- changed the deployment targets of both notification & watchkit app. But build failed
Thanks.
You need to make sure that the CFBundleVersion in the Info.plist of your WatchKit App is identical to the CFBundleVersion in your parent app’s Info.plist.
For those of you who struggling with adapting your build autonumbering scripts (like this one) to WatchKit and getting the same dreaded The value of CFBundleVersion in your WatchKit app's Info.plist ... does not match the value in your companion app's Info.plist ... error, here is the solution: set Strip Debug Symbols During Copy to No for the project, remove same option overrides for all targets, make clean (Cmd+Shift+K) and build (Cmd+B).
Disclaimer: this is more hack than a solution, I don't know why it works, but it's the only way I got my autonumbering script working with WatchKit and I think this information would be useful for someone. If you have better ideas, please share.
Update: finally found a real solution. Turns out even without UI one could easily add a run script to WatchKit App target by manually editing project.pbxproj. Thank you, Curtis Herbert!
error: The value of CFBundleVersion in your WatchKit app's Info.plist (14) does not match the value in your companion app's Info.plist (13). These values are required to match.
I finally figured out the problem is the value of my companion app 's Info.plist which equals to 13, is not equal to that value in WatchKit App.
So you have to make sure that the Bundle version panel 's value in each Info.plist is matched.
After installing WatchKit application extension.There was conflict in
Bundle versions string, short && Bundle version .
So Update both of Keys to values which are equals in both the Extension and main app targets in info.plist file .
&&
When ever you get such problems after updating build number or version. Please follow the steps, which worked for me :
Clean the project
Try to run the project in any one of the simulators
Build or Archive
welcome to the party. I was able to work through this by editing the Info.plist ion both Watchkit App and Watchkit Extension, and then editing the marketing version in the AppName(root level)/Targets/AppName/Versioning/Marketing Version.
Hope this helps anyone else that comes across this issue.
I got this error when I create new target watch kit with different team selected by default while creating the watch app for ios app so i just deleted the targets and again add with same team as my project.

Resources