清单过滤器<compatible-screens>对所有设备</compatible-screens>无法正常工作

时间:2012-01-26 14:49:17

标签: android

我正在尝试根据标记<compatible-screens>过滤我的应用,但该组合对所有设备都无法正常工作。我希望我的应用程序可用于所有Android手机,而不是任何平板电脑。我使用过滤器:

<compatible-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="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="large" android:screenDensity="ldpi" />
    <screen android:screenSize="large" android:screenDensity="mdpi" />
    <screen android:screenSize="large" android:screenDensity="hdpi" />
    <screen android:screenSize="large" android:screenDensity="xhdpi"/>
</compatible-screens>

但是这个过滤器的问题出现在清单文件中,它正在计算设备列表中的三星Galaxy Tab(7')等一些标签,并排除LG Optimus black等设备。

任何人都可以使用这些过滤器或正确的过滤器组合吗?

1 个答案:

答案 0 :(得分:1)

  

我希望我的应用可以在所有Android手机上使用,而不是任何平板电脑。

什么是手机?什么是平板电脑?

您似乎认为这些术语有一个通用的定义。你错了。

您的<compatible-screens>支持所有四种密度的-small-normal-large个屏幕。这将包括原始的三星Galaxy Tab(7“,而不是7',除非这是一个Spinal Tap-esque反向巨石阵的东西),因为该设备被归类为-large

至于为何过滤掉“LG Optimus black”,可能与您的<compatible-screens>元素无关,而是与其他元素无关(例如android:minSdkVersion)。