我有两种方法可以获得真正的解决方案:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
device_value[index++] = dm.widthPixels + "x" + m.heightPixels;
Display display = getWindowManager().getDefaultDisplay();
String widthAndHeight = display.getWidth() + " x " + display.getHeight();
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="3"/>
<supports-screens android:anyDensity="false" android:smallScreens="true" android:normalScreens="true" android:largeScreens="true"/>
两者都返回“320x569”而实际值为“640x960”。
答案 0 :(得分:1)
我认为这是因为您的目标或最低SDK版本正在激活屏幕兼容模式。您应该在清单中使用更高的最小值和目标SDK值。
答案 1 :(得分:1)
关于如何获得真正解决方案的结论:
< uses-sdk android:targetSdkVersion="4"...
< supports-screens android:anyDensity="true"...
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
String resolution = dm.widthPixels + "x" + m.heightPixels;