Info.plist vs config.xml vs iTunesConnect Forms


Config.xml has fields for version & description. But so does the iTunesConnect web site

Plus, Apple manages the version information on their own ( for example, the first app making it to the app store will end up getting the version number 1.0.0 no matter what the config.xml or the xCode plist has to say about that.

Similar things can be said for the description. iTunesConnect’s page with the “Submit For Review” button on it has a ton of fields including the “Description” field.

Could someone shed some light on this please?
Where does the config.xml version and description fields matter ?

config.xml version is the one “built into” your app. Whatever is there, that’s the real one.
This should match what iTunes Connect has to say, otherwise you won’t be able to upload the .ipa for that versoin.

Description in config.xml really isn’t used anywhere I think. Although the documentation says it “may appear” in the app store listings: I don’t think it does.

(The values in package.json are not relevant at all to the publish process)

Well Sujan, that brings the talk to the uploading-the-.ipa-file matter.

According to the instructions here, which I just received from the devteam @ apple, there is a way to “submit an app for review” by pointing to the right build ( at the TestFlight ). This process cuts the need of uploading an .ipa file. No?

Here is what I do:

  1. after ionic cordova build ios, come to xcode, open the build tab and throw in a new build number such as 1.9.0 and then xcode-menu > product->archive it. After validating and uploading to the app store, I can put the new build at the TestFlight almost in no time. And This build can be tested by the users of the TestFlight. ( so far we did not upload any .ipa yet ) I did not use the Application Loader neither.

  2. When the testers give a green light that the TestFlight beta build is good for release, I then go to the app details page on the iTiunesConnect ( where the submit for review button is) , and simply click on the (+) that allows me to point to the right build. Then I choose the build ( such as the 1.9.0 ) and voila! I just submitted the app to the app store without the .ipa upload.

In this case, apple decides the version number and the config.xml version number do not seem to matter much.

Not really, you just uploaded the build to/via Testflight before.

Yes you did.

You overwrote it here:

Of course overwriting makes sure that it doesn’t end up at Apple.

The Cordova tooling was built to not need Xcode (directly) at all in the best case, the more you do in Xcode (adding signing certificates, changing configuration values) the more you don’t need to use the Cordova tooling of course.

But each manual step adds possible errors (of being done wrong, being forgotten). If you use config.xml you can have little script executed before building that increments the version number etc.

If you (and Apple!) are happy with your current process, keep using it. It is perfectly valid to do it this way.