7

i want to my app run only mobile device not in the

tablet 10 and 7 inch

. but my app is run on both tablet size .please help me out

4

5 回答 5

12

是的,正如@OceanLife 所说,您应该使用compatible-screenssupports-screens

但我想在这里添加一些东西。

如果你正在使用

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

然后注意官方的 compatible-screens文档是怎么说的:

如果您希望您的应用程序仅可用于大屏幕和超大屏幕设备,则该元素允许您声明您的应用程序不支持小屏幕和正常屏幕尺寸。外部服务(例如 Google Play)会 相应地过滤您的应用程序。您还可以使用该 元素来声明系统是否应 针对不同的屏幕尺寸调整您的应用程序的大小。

因此,它将在您将 apk 文件上传到 PlayStore 后生效。直到您不会影响此功能。

另请参阅 Google Play 上的过滤器文档,了解有关 Google Play 如何使用此和其他清单元素过滤应用程序的更多信息。

希望它会有所帮助。

于 2013-02-06T12:59:17.673 回答
11

谷歌开发人员对此有非常详细的信息,因此请查看此链接:
分发到特定屏幕

引用下面的相关部分。

仅限手机:

声明一个应用程序仅适用于手机

<manifest ... >
    <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" />
        <!-- 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" />
    </compatible-screens>
    ...
    <application ... >
        ...
    <application>
</manifest>

仅限平板电脑:

声明应用程序仅适用于平板电脑

如果您不希望您的应用程序在手机上使用(也许您的应用程序真的只在大屏幕上才有意义)或者您需要时间针对小屏幕对其进行优化,您可以通过使用阻止小屏幕设备下载您的应用程序清单元素。

<manifest ... >
    <supports-screens android:smallScreens="false"
                      android:normalScreens="false"
                      android:largeScreens="true"
                      android:xlargeScreens="true"
                      android:requiresSmallestWidthDp="600" />
    ...
    <application ... >
        ...
    </application>
</manifest>
于 2013-10-09T11:34:47.143 回答
1

尝试将其添加到您的 android 清单文件中

    <uses-sdk
android:minSdkVersion="6"
android:targetSdkVersion="8" />


<supports-screens
android:anyDensity="true"
android:largeScreens="false"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="false" />
于 2013-02-06T12:51:24.127 回答
1

尝试这个 :

你应该attribute在你的mainfest android:largestWidthLimitDp="enter mobile pixel value which above you want to restrict." 中使用它。

 <supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:resizeable="true"
    android:largestWidthLimitDp="500"
    android:smallScreens="true"
    android:xlargeScreens="false" />
于 2013-02-06T13:01:44.617 回答
0

通过使用Uses-Feature,您似乎可以将应用程序分发限制为仅横向屏幕设备“平板电脑和平板电脑之类的设备”。这是您在 manifest.xml 中需要的代码:

          <uses-feature android:name="android.hardware.screen.landscape"
                      android:required="true"
          ></uses-feature>

也可以使用:

<supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="false"
    android:resizeable="false"
    android:smallScreens="false"
    android:xlargeScreens="true" />
于 2013-02-06T13:05:33.927 回答