如何将android设备与屏幕大小分开

时间:2013-07-23 05:04:56

标签: android performance android-screen

如何根据屏幕大小分离Android设备。我有一个apk应该从Android版本3运行,但我想只在平板电脑上运行该应用程序而不是普通设备。我不知道怎么做这个东西。我想

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

此代码有助于满足我的需求。但是从谷歌播放安装时是否还有其他限制设备的方法。

4 个答案:

答案 0 :(得分:0)

您正在开发原生应用程序或手机应用程序?如果是手机应用程序,您可以使用媒体查询来限制屏幕大小。

答案 1 :(得分:0)

是的,有可能你可以这样做:

Designing an android tablet-only app

希望有所帮助:)

答案 2 :(得分:0)

尝试使用此

DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);

    int widthInPixels = metrics.widthPixels;
    int heightInPixels = metrics.heightPixels;

    if (widthInPixels > 600 || heightInPixels > 600) {
        // This is a tablet dont run
    }

OR

if(tabletSize() > 6)
        Log.d("Testing", "Is Tablet ");
    else
        Log.d("Testing", "Not a Tablet ");

public double tabletSize() {

    double size = 0;
    try {
        // Compute screen size
        DisplayMetrics dm = getApplicationContext().getResources().getDisplayMetrics();
        float screenWidth = dm.widthPixels / dm.xdpi;
        float screenHeight = dm.heightPixels / dm.ydpi;
        size = Math.sqrt(Math.pow(screenWidth, 2) +
        Math.pow(screenHeight, 2));
    } catch (Exception e) {
        Log.e("Testing", "Exception " + e);
    }
    return size;
}

这将为您提供以英寸为单位的设备尺寸,以便您可以将其限制为特定的屏幕尺寸(通常表格为> 6)

答案 3 :(得分:0)

非常简单的启动页面或首页检查设备屏幕大小 -

 DisplayMetrics metrics = new DisplayMetrics();
    Display mDisplay = MainActivity.this.getWindowManager()
      .getDefaultDisplay();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    float screenDensity = metrics.density;
    float screenDensityDPI = metrics.densityDpi;
    int width = mDisplay.getWidth();
    int Height = mDisplay.getHeight();

    Log.e("Density:", String.valueOf(screenDensity + "---"
      + screenDensityDPI));

如果它是1280 * 720,那么继续这样通知这个应用程序仅在平板电脑上工作..

享受:)

Reference code-