如何使用Display.getSize并支持API级别10?

时间:2012-07-25 10:33:30

标签: android android-compatibility

我尝试支持API级别为10的设备。要检查屏幕尺寸,我有这个:

Point size = new Point();
Display display = getWindowManager().getDefaultDisplay();
if(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.HONEYCOMB_MR2) {
    size.set(display.getWidth(), display.getHeight());
} else
    getWindowManager().getDefaultDisplay().getSize(size);

但现在我收到一个错误,因为我使用了getSize(),即使我的最低等级是10 如何正确地做到这一点?

编辑:在应用程序的清单文件中,我有:

<uses-sdk
    android:minSdkVersion="10"
    android:targetSdkVersion="15" />

1 个答案:

答案 0 :(得分:2)

您可以将最低SDK级别设置为10,但可以针对Android 3.2构建Android应用程序(如果您愿意,可以设置更高级别,在项目属性中设置它)。

请确保如果您从比最低级别更高的api级别调用方法,那么首先检查设备SDK级别,就像您一样。

更多相关信息:

http://simonvt.net/2012/02/07/what-api-level-should-i-target/

还可以使用TargetApi注释来避免Lint错误:

http://tools.android.com/recent/lintapicheck