'Enable installing only on small and normal devices

This question has been asked before but all the answers seem outdated. I need to limit the screen size of the devices that can install the app. I have set

    <compatible-screens>
        <!-- all small size screens -->
        <screen android:screenSize="small" android:screenDensity="ldpi" />
        <screen android:screenSize="small" android:screenDensity="mdpi" />
        <screen android:screenSize="small" android:screenDensity="hdpi" />
        <screen android:screenSize="small" android:screenDensity="xhdpi" />
        <screen android:screenSize="small" android:screenDensity="xxhdpi" />
        <screen android:screenSize="small" android:screenDensity="xxxhdpi" />
        <!-- all normal size screens -->
        <screen android:screenSize="normal" android:screenDensity="ldpi" />
        <screen android:screenSize="normal" android:screenDensity="mdpi" />
        <screen android:screenSize="normal" android:screenDensity="hdpi" />
        <screen android:screenSize="normal" android:screenDensity="xhdpi" />
        <screen android:screenSize="normal" android:screenDensity="xxhdpi" />
        <screen android:screenSize="normal" android:screenDensity="xxxhdpi" />

    </compatible-screens>

When I publish the bundle what I see is that tablets and Chrome book are excluded as expected but there are also some phones that are excluded. Google play shows the reason for the exclusion and in most cases it isn't the size of the screen, that would be understandable, but the density. I thought I had enabled all the possible screen densities. Why are these devices excluded anyway? Is there another density that I have to specify? The phone excluded are 1,656 and only 6 for the size all the others were excluded. I have also tried to use just:

    <supports-screens
        android:largeScreens="false"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="false" />

but it didn't have any impact.

EDIT

I have now tried:

    <compatible-screens>
        <!-- all small size screens -->
        <screen android:screenSize="small" android:screenDensity="ldpi" />
        <screen android:screenSize="small" android:screenDensity="mdpi" />
        <screen android:screenSize="small" android:screenDensity="hdpi" />
        <screen android:screenSize="small" android:screenDensity="xhdpi" />
        <screen android:screenSize="small" android:screenDensity="xxhdpi" />
        <screen android:screenSize="small" android:screenDensity="xxxhdpi" />
        <screen android:screenSize="small" android:screenDensity="280" />
        <screen android:screenSize="small" android:screenDensity="360" />
        <screen android:screenSize="small" android:screenDensity="420" />
        <screen android:screenSize="small" android:screenDensity="480" />
        <screen android:screenSize="small" android:screenDensity="560" />
        <!-- all normal size screens -->
        <screen android:screenSize="normal" android:screenDensity="ldpi" />
        <screen android:screenSize="normal" android:screenDensity="mdpi" />
        <screen android:screenSize="normal" android:screenDensity="hdpi" />
        <screen android:screenSize="normal" android:screenDensity="xhdpi" />
        <screen android:screenSize="normal" android:screenDensity="xxhdpi" />
        <screen android:screenSize="normal" android:screenDensity="xxxhdpi" />
        <screen android:screenSize="normal" android:screenDensity="280" />
        <screen android:screenSize="normal" android:screenDensity="360" />
        <screen android:screenSize="normal" android:screenDensity="420" />
        <screen android:screenSize="normal" android:screenDensity="480" />
        <screen android:screenSize="normal" android:screenDensity="560" />

    </compatible-screens>

It is a bit better but there are still more than 1000 excluded devices.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source