Alex Dovgodko Alex Dovgodko - 4 months ago 23
Android Question

Google Play error "Version XXXX is not served to any device configuration"

I'm having the following error:


Version 102001019 is not served to any device configuration: all
devices all devices that might receive version 102001019 would receive
version 103001019.


The problem appeared after I decided to separate APKs for devices with different screen sizes. I have also already multiple APK configuration, with 4 APKs regarding to the texture compression.

So I've set important setting to those APKs in the following way and it doesn't work:
- versionCode:103001019 screenSize: xlarge,large,normal
- versionCode:102001019 screenSize: large,normal

The numbers 2 and 3 should be the differentiating increasing part of the version code to let Google choose the right version for me.

The docs say:


If you have one APK that's for API level 4 (and above) and small -
large screens, and another APK for API level 8 (and above) and large -
xlarge screens, then the version codes must increase in correlation
with the API levels. In this case, the API level filter is used to
distinguish each APK, but so is the screen size. Because the screen
sizes overlap (both APKs support large screens), the version codes
must still be in order. This ensures that a large screen device that
receives a system update to API level 8 will receive an update for the
second APK.


But as far as I don't need to filter on the API version, and I have overlapping in screen sizes, my variant should be Ok. Right?

Any advice would be very much appreciated!

P.S. I have very slow internet connection and 300+MB single APK+OBB size, so it is a pain to check all possible combinations manually.

Answer

What the Play Store does is always pick the highest version number for each device. So given different screen sizes:

  • xlarge 103001019 is only available, so pick 103001019
  • large 103001019 > 102001029 so pick 103001019
  • normal 103001019 > 102001029 so pick 103001019

As you can see, your 102001019 is not selected for any devices as it only supports a strict subset of devices compared 103001019.

Make sure your multiple APKs are designed to support a unique portion of the devices you wish to support.

Comments