2016-06-10 128 views
0

不可见的,我发表了关于谷歌的应用程序Play商店,但它不支持的许多设备,如索尼的Xperia Z2,OnePlus2等,为我的应用程序清单文件是:应用在某些设备上

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

<compatible-screens> 

    <!-- small size screens --> 
    <screen 
     android:screenDensity="ldpi" 
     android:screenSize="small" /> 
    <screen 
     android:screenDensity="mdpi" 
     android:screenSize="small" /> 
    <screen 
     android:screenDensity="hdpi" 
     android:screenSize="small" /> 
    <screen 
     android:screenDensity="xhdpi" 
     android:screenSize="small" /> 

    <!-- Only hdpi and xhdpi for normal size screens --> 
    <screen 
     android:screenDensity="ldpi" 
     android:screenSize="normal" /> 
    <screen 
     android:screenDensity="mdpi" 
     android:screenSize="normal" /> 
    <screen 
     android:screenDensity="hdpi" 
     android:screenSize="normal" /> 
    <screen 
     android:screenDensity="xhdpi" 
     android:screenSize="normal" /> 

    <!-- all large size screens --> 
    <screen 
     android:screenDensity="ldpi" 
     android:screenSize="large" /> 
    <screen 
     android:screenDensity="mdpi" 
     android:screenSize="large" /> 
    <screen 
     android:screenDensity="hdpi" 
     android:screenSize="large" /> 
    <screen 
     android:screenDensity="xhdpi" 
     android:screenSize="large" /> 

    <!-- all xlarge size screens --> 
    <screen 
     android:screenDensity="ldpi" 
     android:screenSize="xlarge" /> 
    <screen 
     android:screenDensity="mdpi" 
     android:screenSize="xlarge" /> 
    <screen 
     android:screenDensity="hdpi" 
     android:screenSize="xlarge" /> 
    <screen 
     android:screenDensity="xhdpi" 
     android:screenSize="xlarge" /> 

    <!-- Special case for Nexus 7 --> 
    <screen 
     android:screenDensity="213" 
     android:screenSize="large" /> 

    <!-- Special case for Samsung S6, One Plus Two, Note 5 --> 
    <screen 
     android:screenDensity="560" 
     android:screenSize="small" /> 
    <screen 
     android:screenDensity="640" 
     android:screenSize="small" /> 
    <screen 
     android:screenDensity="560" 
     android:screenSize="normal" /> 
    <screen 
     android:screenDensity="640" 
     android:screenSize="normal" /> 
    <screen 
     android:screenDensity="560" 
     android:screenSize="large" /> 
    <screen 
     android:screenDensity="640" 
     android:screenSize="large" /> 

</compatible-screens> 

我认为问题是~400dpi的设备。我怎样才能让这些设备支持我的应用程序?

回答

0

从Android开发者docs

兼容屏幕:

通常情况下,你不应该使用这个清单元素。使用此元素可以显着减少应用程序的潜在用户群,因为如果用户没有列出屏幕配置的设备,则不允许用户安装应用程序。当应用程序绝对不适用于特定的屏幕配置时,您应该仅将它用作最后的手段。您应该遵循“支持多个屏幕”的指南,为多个屏幕提供可扩展的支持,使用不同的屏幕大小和密度的布局和位图。

如果您希望您的应用程序分发到任何类型的设备,无论屏幕大小和密度的,你应该从你的清单文件中删除<compatible-screens>标签。

从我的理解清单文件,你想支持所有的设备。如果是这种情况,请继续并从清单中完全删除<compatible-screens>标签。

然而,如果你必须使用<compatible-screens>标签来限制你的应用程序特定的屏幕类型的可用性,你应该android:screenDensity="480"添加<screen>条目所有的屏幕尺寸,支持与xxhdpi屏幕像素密度的设备。您提到的设备Xperia Z2和One Plus 2属于xxhdpi存储桶,添加上述条目将使您的应用可用于这些设备。

相关问题