首页 > 解决方案 > Google Play 商店“不支持所需的屏幕密度和尺寸”尽管允许所有

问题描述

在 Google Play 控制台设备目录中,有许多较新的设备(例如 Galaxy S9+)被列为不受支持,解释如下:

Doesn't support required screen densities & sizes <compatible-screens>
- 640, SMALL
- 640, NORMAL
- 640, LARGE
- 640, XLARGE

但是,我认为我通过将以下内容添加到我的解决了这个问题AndroidManifest.xml

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

看起来我明确允许所有屏幕密度和尺寸,但有些设备仍然说它们不兼容。

对于它的价值,我不会<compatible-screens>在清单中的任何地方使用该元素(因为这本质上是一个白名单,Google 建议您不要正常使用它)。

我不确定重复的 640 是什么意思,但我在其他一些设备上也收到了相同的消息,它们现在与我的清单的上述更改兼容。有谁知道可能是什么问题?

标签: androidandroid-manifestcompatibilitygoogle-play-console

解决方案


您的 APK 是否有可能在您不知情的情况下从您包含在应用程序中的第三方库中继承了兼容屏幕部分?

要检查这一点,您可以尝试以下命令:

~/Android/Sdk/build-tools/$version/aapt dump xmltree your.apk AndroidManifest.xml

这会打印出为您的应用生成的清单。寻找任何可疑的“屏幕”行。


推荐阅读