I just fixed CB-9080 by removing the fix for CB-8834, since I consider VERSION_DOWNGRADE to be easily worked around while not launching the application on older devices is an unacceptable fail state.
The thing is why is VERSION_DOWNGRADE happening in the first place, and why are we generating the versionCode? This code should be linear every time you actually release something to the play store, and otherwise should stay the same. I know there was a bunch of messing around with it to sync it to whatever Apple does, but I don't know if that's the right approach here. See this form more info on versioning: http://developer.android.com/tools/publishing/versioning.html Can anyone explain more about why we're generating the versionCode the way we are right now?