Play商店的App屏幕密度支持

时间:2016-03-04 10:32:06

标签: android xml google-play android-manifest screen-density

我想在Play商店中部署我的应用程序,用于所有密度的小型普通手机。 android:screenDensity元素的<screen>属性没有xxhdpixxxhdpi密度作为预定义值。 我应该将值480560用于相应的缺失密度吗?

或者我可以使用它吗?

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

这是否涵盖了所选屏幕尺寸的所有密度?

2 个答案:

答案 0 :(得分:1)

<supports-screens>代码中,将android:largeScreensandroid:xlargeScreens的值设置为false不会使您的应用无法使用这些屏幕尺寸。它只会在这些屏幕尺寸上为您的应用启用屏幕兼容模式。

来自Android开发人员doc

android:largeScreens

  

指示应用程序是否支持更大的屏幕外形。大屏幕被定义为比“普通”手机屏幕大得多的屏幕,因此可能需要对应用程序部分进行一些特别注意以充分利用它,尽管它可能依赖于系统调整大小以填充屏幕。   这个版本的默认值实际上在某些版本之间有所不同,因此如果您始终显式声明此属性,则更好。请注意,将其设置为“false”通常会启用屏幕兼容模式。

<强>机器人:xlargeScreens

  

指示应用程序是否支持超大屏幕外形。 xlarge屏幕被定义为一个明显大于“大”屏幕的屏幕,例如平板电脑(或更大的屏幕),并且可能需要特别注意应用程序的部分才能充分利用它,尽管它可能依赖于调整大小由系统填充屏幕。   这个版本的默认值实际上在某些版本之间有所不同,因此如果您始终显式声明此属性,则更好。请注意,将其设置为“false”通常会启用屏幕兼容模式。

如果您想让您的应用仅适用于手机,请将以下内容添加到您的清单中:

<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="480" />
    <!-- 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="small" android:screenDensity="480" />
</compatible-screens>

android:screenDensity="480"的条目是支持xxhdpi存储区。

查看Android发布商文档的this article,其中介绍了如何仅向手机提供应用。

答案 1 :(得分:0)

我会选择第二种选择;指定支持的屏幕,然后可能添加anyDensity =&#34; true&#34;:

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

没有必要设置xxhdpixxxhdpi。 然后始终使用模拟器在不同的屏幕尺寸和密度上测试您的应用。