We have released an Android App, however the app only supports about 10,976 out of 12,560 total devices in the catalog.
Some of these are older devices lower than the minSdkVersion of 15. However, there are some newer and more popular unsupported devices such as the Samsung Galaxy S10, even though I have physically tested an S10 in the Android Studio debugger and the build ran correctly.
More notable examples of unsupported devices are all of the Google Pixel devices, Galaxy S8+, S9+, and S10+. Similar supported devices include the regular S8, S9 and S10e.
A few months ago, I increased the number of supported devices from 9,674 to almost by adding xxxhdpi and sw480dp layouts and support in the manifest. Below are my current manifest and gradle details:
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:resizeable="true"
/>
<compatible-screens>
<screen
android:screenDensity="ldpi"
android:screenSize="normal" />
... // also layouts mdpi, hdpi, xhdpi, xxhdpi
<screen
android:screenDensity="xxxhdpi"
android:screenSize="normal" />
<screen
android:screenDensity="ldpi"
android:screenSize="large" />
... // also layouts mdpi, hdpi, xhdpi, xxhdpi
<screen
android:screenDensity="xxxhdpi"
android:screenSize="large" />
<screen
android:screenDensity="ldpi"
android:screenSize="xlarge" />
... // also layouts mdpi, hdpi, xhdpi, xxhdpi
<screen
android:screenDensity="xxxhdpi"
android:screenSize="xlarge" />
</compatible-screens>
//Gradle
compileSdkVersion 27
defaultConfig {
minSdkVersion 15
targetSdkVersion 27
...}
I also have a ton of layout folders for different sizes, mainly:
layout
layout-large
layout-normal
layout-sw320dp-hpdi/xhdpi/xxhdpi/xxxhdpi (most phones seem to be in these 4 folders)
layout-sw480dp
layout-sw600dp
layout-sw720dp
I could add the folders for each individual density for the other sizes, but in Android Studio some of the phones that don't work are listed as being mapped to some of the layouts above. It seems like a lot of the layouts I already have aren't used so it seems inefficient to add more with not indication they are needed.
Is there anything else I am missing, for example changing the target sdk? Does anyone know what specific layouts the Pixel phones and Galaxy S+ phones would require and if I already should support them?
You should almost never need to use supports-screens
or compatible-screens
. In fact, the docs for compatible-screens
say in big bold red letters:
Caution : Normally, you should not use this manifest element
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.