--- a/frameworks/base/core/java/android/view/DisplayInfo.java
+++ b/frameworks/base/core/java/android/view/DisplayInfo.java
@@ -692,8 +692,10 @@ public final class DisplayInfo implements Parcelable {
outMetrics.density = outMetrics.noncompatDensity =
logicalDensityDpi * DisplayMetrics.DENSITY_DEFAULT_SCALE;
outMetrics.scaledDensity = outMetrics.noncompatScaledDensity = outMetrics.density;
- outMetrics.xdpi = outMetrics.noncompatXdpi = physicalXDpi;
- outMetrics.ydpi = outMetrics.noncompatYdpi = physicalYDpi;
+ //outMetrics.xdpi = outMetrics.noncompatXdpi = physicalXDpi;
+ //outMetrics.ydpi = outMetrics.noncompatYdpi = physicalYDpi;
+ outMetrics.xdpi = 300; //outMetrics.noncompatXdpi = physicalXDpi;
+ outMetrics.ydpi = 300;
通过调整outMetrics.xdpi和outMetrics.ydpi的值可以使安兔兔读到的屏幕尺寸与实际尺寸一致。
这个值越大,计算出的屏幕尺寸越小,反之则越大。
若要调的更精确,还可以使用小数,比如:
outMetrics.xdpi = (float)300.5;
outMetrics.ydpi = (float)300.5;