Code Monkey home page Code Monkey logo

Comments (1)

nid90 avatar nid90 commented on June 11, 2024

Did some experiments on this for App Store. Here are the results.

TL;DR:

  • version name should always be greater than the last production release
  • version code and version name combination should be unique
  • version code does not have constraint on being higher than previous value

Here is more data on this:

Scenario: current release build - 1.48.0 (9201)
___________________

Test Case 1: same version name as production, increased build number
Upload a build to TF with these values:
versionName: 1.48.0
versionCode: 9201

Result:
[07:58:48]: The provided entity includes an attribute with a value that has already been used The bundle version must be higher than the previously uploaded version: ‘9201’. (ID: 25ce3149-2aa2-46b7-a1de-fb5e1f344d10) (-19232)
[07:58:48]: Could not download/upload from App Store Connect!
___________________

Test Case 2: increased version name from production, same build number as production
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9201

Result:
Success
___________________

Test Case 3: same version name from production, increased build number from production
Upload a build to TF with these values:
versionName: 1.48.0
versionCode: 9202

Result:
[08:20:06]: ERROR: Asset validation failed (90186) Invalid Pre-Release Train. The train version '1.48.0' is closed for new build submissions (ID: 70a97821-fb9d-4396-971b-6cbf16c3bdbb)
[08:20:06]: ERROR: Asset validation failed (90062) This bundle is invalid. The value for key CFBundleShortVersionString [1.48.0] in the Info.plist file must contain a higher version than that of the previously approved version [1.48.0]. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring (ID: 7d08846f-ffbc-407a-9501-10ef6cf9855f)
[08:20:06]: Could not download/upload from App Store Connect!

___________________

Test Case 4: version name lower than production and previously unused
Upload a build to TF with these values:
versionName: 1.47.1
versionCode: 9201

Result:
[08:59:25]: ERROR: Asset validation failed (90062) This bundle is invalid. The value for key CFBundleShortVersionString [1.47.1] in the Info.plist file must contain a higher version than that of the previously approved version [1.48.0]. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring (ID: 1b140854-882e-412c-a971-2f663cb407cc)
[08:59:25]: Could not download/upload from App Store Connect!

___________________

Test Case 5: same version name as before (non-production), but different build number
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9202

Result:
Success

___________________

Test Case 6: same version name as before (non-production), but different build number  -- full duplicate
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9202

Result:
[09:21:44]: The provided entity includes an attribute with a value that has already been used The bundle version must be higher than the previously uploaded version: ‘9202’. (ID: ea5d137d-4c5e-48b0-9336-69988a64acf4) (-19232)
[09:21:44]: Could not download/upload from App Store Connect!

___________________

Test Case 7: ame version name as before (non-production), but lower build number than production
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9190

Result:
Success

from store-quirks.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.