Android中文API
ADC-Android API Android SDK Android Studio
当前位置: 主页 > Android开发文档 >

怎么适配领导的android手机

时间:2017-09-14 20:56来源:未知 作者:卓一哥 点击:
一、多机型 UI 适配 在 Android 开发的工作日常中,UI 适配是一件比较重要的事情。一般开发新的功能,有新的页面,最终开发完成发布之前,都需要让设计师来审 UI 效果。 而有时候,明

一、多机型 UI 适配

在 Android 开发的工作日常中,UI 适配是一件比较重要的事情。一般开发新的功能,有新的页面,最终开发完成发布之前,都需要让设计师来审 UI 效果。

而有时候,明明我们已经在一款标准的 3 倍手机上,做到了让设计师小姐姐满意的效果,但是当换了另外一台手机的时候,效果又不那么如意。

传统的做法是,拿到效果不对的手机,单独适配看看是不是哪里布局写的不对导致效果不正确,然后改正它。但是总能碰到我们拿不到真实设备的情况。

本文就介绍一个命令,可以修改你当前设备的参数,来模拟出目标设备的显示效果,让你独立就把多机型 UI 效果确认的事情给做了。

二、WM 命令

2.1 什么是 WM 命令

说的这么厉害,实际上需要使用的就是一行 wm 命令,可以通过 adb shell 来操作它。

wm 命令主要用来帮助我们修改一些屏幕的参数,先来看看它的文档。使用 adb shell wm 命令,可以方便的查看 wm 的文档描述

 

/wm-doc.png
/wm-doc.png

 

可以看到,wm 命令可以帮助我们修改当前设备的 size 、 density 等参数,而这两个参数就是决定了当前设备的显示效果。

2.2 WM 的命令

从上面的文档可以看出,它其实支持的命令还是挺多的,但是有一些根本用不上,是需要系统权限的,所以正常来说我们是无法使用的。那么,还是介绍几个比较实用的命令。

以下例子都是在一款标准 density 为 3 的设备上运行的,屏幕像素为 1080px * 1920px。

1、wm size

wm size 命令,可以用来查询和修改当前设备的尺寸,如果想要修改尺寸,可以使用 px 或者 dp 为单位(默认为 px),使用 x 进行连接,这个其实看看 wm size 的输出,你就清楚了。

 

/wm-size.png
/wm-size.png

 

在这里的例子中,做了几件事情:

  1. 使用 wm size 命令查看当前设备的尺寸。
  2. 使用 wm size 命令将当前尺寸修改成了 1000x2000。
  3. 再次使用 wm size 命令查看当前设备的尺寸。
  4. 最后使用 wm size reset 命令,将屏幕尺寸还原。
  5. 再用 wm size 命令,查看还原后的尺寸。

这几个步骤就已经涵盖了 wm size 命令的所有使用步骤,可以使用它查看当前屏幕尺寸,并且修改屏幕尺寸和还原它。

2、wm density

wm density 命令,可以用来查看和修改当前设备的 density 参数。

使用起来很简单,直接上命令了。

 

/wm-redensity.png
/wm-redensity.png

 

在这个例子中,我做了几件事情:

  1. 使用 wm density 查看当前设备的 density。
  2. 在使用 wm density 命令,修改当前设备的 density 为 420。
  3. 然后再使用 wm density 查看修改后的参数。
  4. 最后使用 wm density reset 将设备的 density 还原。
  5. 最后再查看一下还原后的值。

3、wm overscan

wm overscan 命令,可以修改当前设备的屏幕内边距。其实我觉得这个命令没什么用处,但是还是演示一下如何使用。

 

/wm-overscan.png
/wm-overscan.png

 

在这个例子中,做了几件事情:

  1. 使用 wm overscan 修改边距为 20 。
  2. 然后使用 wm overscan reset 将其还原。

2.3 WM 命令的原理

wm 命令的逻辑非常的简单,它实际上是和 WindowManagerService 进行交互,通过 WMS 来修改屏幕相关的一些参数。