Abel Muiño created CB-5590:
------------------------------

             Summary: Asymetry in cordova build updating platform versions 
(Android/iOS)
                 Key: CB-5590
                 URL: https://issues.apache.org/jira/browse/CB-5590
             Project: Apache Cordova
          Issue Type: Bug
          Components: CLI
    Affects Versions: 3.1.0
         Environment: OSX
            Reporter: Abel Muiño


The version attribute from config.xml updates fields with different semantic in 
Android vs iOS.

Both platforms have 2 different version numbers. One acts as the "public" 
version number (published on the markets, etc) and the other acts as a 
"private" build number (changing with each development iteration)

The current behavior is:

* Android: updates the {{android:versionName}} ( [A string value that 
represents the release version of the application code, as it should be shown 
to users|http://developer.android.com/tools/publishing/versioning.html] )
* iOS: updates the {{CFBundleVersion}} instead: ( [represents an iteration 
(released or unreleased) of the bundle and can contain a mix of characters and 
numbers, as in 
12E123|https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringYourApp/ConfiguringYourApp.html#//apple_ref/doc/uid/TP40012582-CH28-SW18])

So, android updates the visible version, but iOS updates the private one.

This should be synced… I think it makes sense to have the {{config.xml 
version}} be the public one.

This means update the iOS tooling to fill the {{CFBundleShortVersionString}} 
instead.

That way, {{CFBundleVersion}} and {{android:versionCode}} remain "private 
versions", maybe using the build number from a continous integration server…



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to