android设备 显示density和分辨率

1、确定手机的显示density和分辨率

desity翻译成中文的意思是密度,在安卓系统中,desity是一个重要的显示参数。如果density设置不当,如低分辨率用了高density,会使得字体和其他一些UI显示得特别小,甚至影响App兼容。要确定手机的density很简单,使用RE文件管理器,开启system目录下的build.prop,找到“ro.sif.lcd_density=”的参数,后面的数字就是当前的density。

确定屏幕分辨率就更简单了,自行查询厂商官方数据即可。

2、根据分辨率修改density

前面说到,如果density不对,会造成很多问题,所以修改分辨率前,我们把density变更到对应的数值。以笔者的设备为例。笔者的设备默认分辨率是1080p(1920x1080),density为480。如果要把分辨率修改到720p(1280x720),那么就按照下面的方法计算出需要修改的density数值。

  需要修改成的density数值=480/(1080/720)=320

  1080p的横向、纵向分辨率是720p的1.5倍,所以density需要除以1.5。如果你是2K分辨率(2560x1440),想要修改成为1080p,那么同理,计算公式如下:

  需要修改的density数值=原density数值/(1440/1080)

  使用RE文件管理器,编辑build.prop。将“ro.sif.lcd_density=”的参数改写成为需要修改的数值,保存。

3、修改显示分辨率

  修改density后,就可以接着修改显示分辨率了,这一步需要用到电脑,下面以Windows PC为例。首先需要安装安卓adb开发包,下载后,按照压缩包里的说明安装。

接着开启安卓手机的USB调试模式,将其连接到电脑。开启CMD,输入以下代码:

  adb shell wm size “所需修改的分辨率”

  比如说,如果你需要把分辨率改成1080p,则输入:

  adb shell wm size 1080x1920

  如果需要改成720p,则输入:

  adb shell wm size 720x1280

  按回车,提示成功后重启手机。如果提示error错误,则在CMD输入以下命令:

  adb kill-server

  adb start-server

  adb remount

  然后再次输入:

  adb shell wm size “所需修改的分辨率”

  接着重启手机。重启后,恭喜你,分辨率修改成功啦!

  如果要把分辨率改回去,也需要先修改density,然后再通过CMD修改显示分辨率。总之,原理就是先通过系统配置文件修改density,然后通过adb工具修改显示分辨率,这原理还是很好理解的。

  通过降低显示分辨率,可以有效提升安卓机的流畅性和续航,并降低发热,好处大大的有!如果你没长能分辨2K和1080p的写轮眼,降低一下分辨率还是很有意义的。希望厂商们以后更改更加务实,不要再搞一些中听不中用的噱头吧!

 

你可能感兴趣的:(android,framework)