gradle versionCode
versionCode — A positive integer used as an internal version number.
This number is used only to determine whether one version is more
recent than another, with higher numbers indicating more recent
versions. This is not the version number shown to users; that number
is set by the versionName setting, below. The Android system uses the
versionCode value to protect against downgrades by preventing users
from installing an APK with a lower versionCode than the version currently
installed on their device.
The value is a positive integer so that other apps can programmatically
evaluate it, for example to check an upgrade or downgrade relationship.
You can set the value to any positive integer you want, however you
should make sure that each successive release of your app uses a greater
value. You cannot upload an APK to the Play Store with a versionCode you
have already used for a previous version.