Android – Remove obsolete beta version from Google Play

androidgoogle-playgoogle-play-console

About two years ago I published a version of one of my apps as a beta testing version for a limited number of users, using the "Beta" version in Google Play Developer Console. I didn't promote that version to production, instead I just released another version in the production track.

That old beta is still lingering around, and I can't find a way to get rid of it. I even got an email from Google today saying

Hello Google Play Developer,

This is a reminder that starting November 1, 2018, updates to apps and
games on Google Play will be required to target Android Oreo (API
level 26) or higher. After this date, the Play Console will prevent
you from submitting new APKs with a targetSdkVersion less than 26.

Configuring your app to target a recent API level ensures that users
benefit from significant security and performance improvements, while
still allowing your app to run on older Android versions (down to the
minSdkVersion).

Action required

Please ensure that your apps are configured to target at least Android
8.0 (API level 26) by November 1, 2018. For technical advice on how to change your app's target API level to meet these requirements, refer
to the migration guide.

Affected apps

The apps included below have one or more APKs—in production or testing
tracks—that aren't currently targeting API level 26 or higher. Apps
are listed with the maximum version code and corresponding
targetSdkVersion. If you have more than 20 apps that could be affected
in your account, please check the Play Console for a full list.

com.mypackage.myapp       73     23

The app referred to on the bottom line is the two year old beta version, with a version number of 73 and targeting API 23. The one in production was updated just a few days ago and targets API 28.

Is there any way at all to get rid of that old beta version from Google Play Developer Console?

Best Answer

Using a few hints you left on your stack overflow profile I think I've deduced what your app is and what is the problem. I won't mention the app name here as you seemed to want to keep the question general.

The problem is the subtle difference between a superceded release and a shadowed release. Your beta APK is partially shadowed. The beta APK is targeted at users on SDK9+, whereas your production APK is targeted at users on SDK16+. This means while most users will get your production APK, users on older devices (SDK 9-15) will get your beta. As a result, your beta is still technically active, and so you getting the email is correct.

So now the question is what can you do to deactivate it? The answer is a bit confusing in the UI, but makes sense once you think about it. You need to

  • create a release with NO (0!) APKs in it
  • publish that release to the beta track

This tells Play that you deliberately want there to be no active APKs in Beta. These users will still get production APKs, but your old beta APK will no longer be active. We're sorry this got confusing, you were caught by a subtle edge case.