on
Google Play Store beta issue with new permissions model
I am currently working on a rewrite of our existing app, and I have encountered an unfortunate issue while trying to test our deployment to beta in the Google Play Store. While we use Hockeyapp to do our system testing, to do production deployments when everything is ok, I would like to push the app to beta and then manually promote to Production if all is ok.
Our existing app had a compileSDKVersion of 21 and for the newer app, we of course have upped it to the most recent version (at the time of writing, 23). Without warning, this caused a bizarre situation where we were not able to remove the beta: It is forbidden to downgrade devices which previously used M permissions (target SDK 23 and above) to apks which use old style permissions (target SDK 22 and below). see error below.
To make things worse, I was required to make changes on the existing app but I could not release this due to the beta deployment! I feel that is pretty poor form to have a beta deployment not only block your path to production, but to force you to a particular api level. One could only hazard a guess that is it quite complicated for when permissions for a particular app, for it to be undone if the api level were to be decreased for whatever reason. So I was forced to hastily bump my compileSDKVersion to 23 and permissions handling code, which turned to out be quite easy. Nevertheless, it caused unnecessary angst and implicit risk of having to release functionality that was not required.