Google play, I accidentally uploaded production APK, now can't do beta testing

I contacted google play support. And yes, if you accidentally upload to production, you can no longer test. This was their response:

Thanks for contacting Google Play about removing a published Production APK.

We don't currently support the functionality you're requesting. In this case, you would need to unpublish the current app and then publish a new app with a new package name. I apologize for any inconvenience this may cause.

We currently require that once a Production APK has been published, the app must always have an APK in Production. This requirement is in place so that we are in compliance with the DDA by ensuring that once an app has been made publicly available, that it remains available for any users who may have installed it. However, we can delete an app in certain circumstance when an app has been unpublished for more than 24 hours and no install was detected.

As you have already unpublished your app, there is nothing you can do more from your side. Instead, we will wait for another 24 hours to see whether the app has any installs. If there is no installs, I will proceed with app deletion and get back to you after 24 hours. Then, you will be able to upload the same package in Beta track.

Thanks for your cooperation.


I have an improvement on top of goodKode's answer. On this date (Oct 2016) there is no minSdkVersion that Play Store would accept and would yield 0 compatible devices - 26 is not allowed and 25 was released in August.

There are other limiting fields in AndroidManifest that can be used to the same effect. I picked <uses-library android:name="some.bogus.feature.that.doesnt.exist" android:required="true"/> and when uploading the APK to production, Play Store reports happily that 0 devices are supported but allows the upload. Result: the app cannot be found via search but is accessible with the beta link.

A full list of filters can be found here: https://developer.android.com/google/play/filters.html


I found a neat trick as I encountered the same situation and had to find a satisfactory solution...

Update and general solution: set a flag (feature) that is not supported on any device! DonSteep recommends the <uses-library> flag.

This will keep the app "published" but in practice, no device will see it.

Good luck!


Old answer (outdated):

1) upload a new production release with minSdkVersion [apilevel] in your build.gradle where "apilevel" is as high as the Google Play Store allows - currently 25 while the highest released platform level is 24 / Nougat. This means that your app will be still officially published, but wont show up in searches as none of the devices will be compatible. As of today (Aug 2015), this will do: minSdkVersion 25

2) enjoy open beta!