Hi. This is a pictorial guide on how to fix the APK version issue if you're UPDATING Android Crosswalk APK from Cordova CLI 4 to Cordova CLI 5 in Intel XDK and how to resolve the APK version error on the Google Play Store.
NOTE: If you are uploading a new app, this does not apply to you. This is only for updating Apps that were using Cordova CLI 4 previously.
Scenario: Your game has been using Cordova CLI 4.1.1 or below on Intel XDK and the latest Google Play Store warning states that you must update all your Apps to above CLI 4.1.1 (i.e. CLI 5) before May 2016 or they will be dropped from the Store.
The problem is that before Cordova CLI 5, the version for APK was designated as below:
i. 60000 - for x86
ii. 20000 - for ARM
The screenshot shows the version from my own App after updating it to version 0.0.2 from 0.0.1. When the APK was compiled, the version for x86 was designated as 60002; and for ARM, 20002. This was using Cordova CLI 4.
If you use the previous APK version code numbering, like in CLI 4 for CLI 5 as below ...
... on Cordova CLI 5, the APP version will come out as BELOW the previous version number, usually as 14 (x86) and 12 (ARM).
This will cause on error on the Google Play Store and you will NOT be able to publish your new APK as your new App Version is LOWER than the previous App number ...
App Version (x86): 14 < 60001
App Version (ARM): 12 < 20001
1. Number your updated app version as usual. If it's version 5, you can number it as: 0.0.5
2. Number your App Version Code as 6001 or 6002 or 6003 etc ... as long as 600x is bigger than the last update (for example last updated APK was version 60002 and 20001 respectively.
Reason for App Code 600x:
Reasons for selecting 600x and not any number below 600x: When you upload an APK below 6000, Google Play Store will give an error that the APK number is less than the previous version (6000x / 2000x), regardless of whether it's for x86 or ARM. So it's safer to select an App Version Code above 600x.
3. When you compile using Cordova CLI 5, the version will automatically append a 2 (as 600x2 for ARM) or 4 (as 600x4 for x86) to the App Version.
So if you name the App Version code as 6002, the version will become 60022 (arm) and 60024 (x86):
So this is how you solve the problem of UPDATING your APK version number when you compile using Intel XDK using Cordova CLI 5.
NOTE: There are many other ways to number your APK version, as long as your APK version number is higher than the previous version. The tip I've given above is just ONE of the ways and you may use your own numbering convention. :)