首页 > 代码库 > wm命令使用方法及LCD显示图标大小不正常时解决办法

wm命令使用方法及LCD显示图标大小不正常时解决办法

注:Android 4.3引入的wm工具

wm命令及用法:

系统说明:

                                  usage: wm [subcommand] [options]
                                               wm size [reset|WxH]
                                               wm density [reset|DENSITY]
                                               wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]

                                               wm size: return or override display size.

                                               wm density: override display density.

                                               wm overscan: set overscan area for display.

解释:wm是高通平台(MTK平台类似的命令为am,其他平台没接触,不太清楚)下对手机分辨率、像素密度、显示区域进行设置的命令。其参数比较少,下面逐条介绍一下该命令的用法。

1、wm size [reset|WxH]

[]内的是可选项。单纯运行wm size命令将会得到lcd本身设置的显示分辨率。如下图:

                                             

    wm size W x H命令是按witch x hight 设置分辨率。如果分辨率设置的过大,图标会变大,反之则变小。设置了分辨率以后执行wm size命令,可以看到LCD本身的分辨率及overwrite的分辨率。如下图:

                                           

 wm size reset 命令是将分辨率设置为LCD原始分辨率。

2、 wm density [reset|DENSITY]

    该命令的用法类似于wm size 命令,作用是读取、设置或者重置LCD的density值。density值即LCD的ppi.

3、 wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]

  该命令用来设置、重置LCD的显示区域。四个参数分别是显示边缘距离LCD左、上、右、下的像素数。例如,对于分辨率为540x960的屏幕,通过执行 命令wm overscan 0,0,0,420可将显示区域限定在一个540x540的矩形框里。

了解wm可以解决LCD图标大小显示不正常的问题。但是这些设置都是临时的,适合于调试来确定问题和解决办法。永久性的修改可以参照以下两个办法(均在高通平台下):

法一:

2> adb root    //提示read only filysystem时执行此命令获取root权限,

    adb remount

   adb pull /system/build.prop D:\

   在build.prop末尾添加一行 ro.sf.lcd_density=240 

   adb push  D:\build.prop  /system/

   adb shell

   cd /system/

   chmod 644 build.prop    没有修改权限将导致手机起不来

法二: 直接修改system.prop

Y:\xxxx\device\qcom\xxxx\system.prop

ro.sf.lcd_density=240 改这个值,然后重新编译system.img