当前位置:   article > 正文

[CM311-1A]-安卓设备视频分辨率 DPI 以及刷新率问题_电视盒子自定义dpi

电视盒子自定义dpi

##################################################

目录

目录

魔百盒视频分辨率以及刷新率问题

问题以及最好的解决方法

通过 adb 配合截屏修改分辨率

通过命令进行截屏

编写一个截屏脚本

Xshell 5 进入 CM311-1A

查看机器型号

查看安卓 ID

查看安卓系统版本

使用命令调整分辨率以及 DPI

常用尺寸单位概念一览

像素/xp 与像素密度和分辨率概念

dpi 概念

dp/dip 与 sp 解读

介绍一下 wm 命令

wm size/分辨率 与 wm density/像素密度

wm overscan 设置显示区域

关于 FPS 帧率/刷新率

帧率概念

使用 dumpsys gfxinfo 测试 fps 性能流畅度

通过 dumpsys SurfaceFlinger 获取 fps

通过 dumpsys window displays 查看 fps

settings 查看 system 和 global 相关的信息



##################################################

魔百盒视频分辨率以及刷新率问题

——————————

问题以及最好的解决方法

        因为是老显示器了最高是 60 Hz 刷新率

        一开始插入 HDMI 视频线的时候是最高刷新率 直接超频 显示器根本显示不了…… 无奈只好接上一台比较大的显示器

        外接鼠标 将刷新率调整为最低:

分辨率

%%%%%

通过 adb 配合截屏修改分辨率

        如果你手边又没有大显示器 该怎么办?

        这边教你一招 将 CM311-1A 盒子连接网线,插上 USB 键盘

        然后按下 PrScrn 截屏键!自动保存路径为 sdcard/Pictures/Screenshots

        电脑终端使用 adb 命令从盒子下载这些截屏:

adb pull "sdcard/Pictures/Screenshots"

        方向键移动 空格键选择 回车确认

        每走一步都要截屏下载一次!这是最最离谱的办法了 亲测可行!!!

%%%%%

通过命令进行截屏

        截屏前准备:

  1. cmcc_jiangsu:/ # pwd
  2. /
  3. cmcc_jiangsu:/ # cd /sdcard
  4. cmcc_jiangsu:/sdcard # pwd
  5. /sdcard
  6. cmcc_jiangsu:/sdcard # ls
  7. Alarms DCIM Notifications com.iflytek.xiri zm_wx_chuantu
  8. Android Download Pictures msc
  9. DBLauncher Movies Podcasts zm_pingbao
  10. DBZM Music Ringtones zm_pingbao_local
  11. cmcc_jiangsu:/sdcard # mkdir sc /* 先新建一个合适的目录 */
  12. cmcc_jiangsu:/sdcard # ls
  13. Alarms DCIM Notifications com.iflytek.xiri zm_pingbao_local
  14. Android Download Pictures msc zm_wx_chuantu
  15. DBLauncher Movies Podcasts sc
  16. DBZM Music Ringtones zm_pingbao
  17. cmcc_jiangsu:/sdcard #

        使用 screencap 工具录屏 语法如下:

  1. 一般使用情况:
  2. screencap -p 存储路径
  3. 介绍信息如下:
  4. cmcc_jiangsu:/sdcard/sc # screencap -h
  5. screencap 2
  6. usage: screencap [-hp] [-d display-id] [FILENAME]
  7. -h: this message /* 输出此信息 */
  8. -p: save the file as a png. /* 存储为 .png 格式 */
  9. -j: save the file as a jpg.(default) /* 默认存储为 .jpg 格式 */
  10. -d: specify the display id to capture, default 0. /* 指定要捕获的显示 id 默认为 0 */
  11. If FILENAME ends with .png it will be saved as a png. /* 如果文件名以 png 结尾将保存为 png 格式文件 */
  12. If FILENAME is not given, the results will be printed to stdout. /* 如果没有给出文件名结果将打印到标准输出 */
  13. 1|cmcc_jiangsu:/sdcard/sc #

        示例截屏:

  1. cmcc_jiangsu:/sdcard # screencap -p /sdcard/sc/1.png /* 将截屏存储到 /sdcard/sc/ 命名为 1.png */
  2. screencap 3
  3. screencap start. screen_type: 1
  4. file path: /sdcard/sc/1.png /* 显示了存储位置 */
  5. new ScreenCatch ok
  6. got video+osd data: 1280 x 720
  7. SkEncodeImage success
  8. screencap end
  9. cmcc_jiangsu:/sdcard # cd sc /* 进入存储目录 */
  10. cmcc_jiangsu:/sdcard/sc # ls -alh /* 查看确实存在文件 */
  11. total 762K
  12. drwxrwx--x 2 root sdcard_rw 4.0K 2022-07-20 18:58 .
  13. drwxrwx--x 22 root sdcard_rw 4.0K 2022-07-20 18:56 ..
  14. -rw-rw---- 1 root sdcard_rw 1.4M 2022-07-20 18:58 1.png
  15. cmcc_jiangsu:/sdcard/sc #

        下载到本地查看一下:

  1. C:\Users\byme>adb pull /sdcard/sc
  2. /sdcard/sc/: 1 file pulled, 0 skipped. 1.3 MB/s (1545243 bytes in 1.127s)
  3. C:\Users\byme>dir sc
  4. 驱动器 C 中的卷是 System_8.1
  5. 卷的序列号是 B6F6-A064
  6. C:\Users\byme\sc 的目录
  7. 2022/07/20 19:05 <DIR> .
  8. 2022/07/20 19:05 <DIR> ..
  9. 2022/07/20 19:05 1,545,243 1.png
  10. 1 个文件 1,545,243 字节
  11. 2 个目录 4,313,444,352 可用字节
  12. C:\Users\byme>

        如下:

screencap -p /sdcard/sc/1.png
screencap -p /sdcard/sc/1.png

        因为锁屏了 所以截取的屏保……

%%%%%

编写一个截屏脚本

        编写一个简单的脚本 命名为 .cmd 或者 .bat 以后就不用手动操作了!!!

  1. adb shell screencap -p /sdcard/1.png /* 截屏存储 */
  2. adb pull /sdcard/1.png /* 下载到当前目录 */
  3. adb shell rm /sdcard/1.png /* 删除截屏 */
  4. start 1.png /* 打开图像 */
  5. del 1.png /* 删除图像 */
  6. exit /* 退出 */

——————————

Xshell 5 进入 CM311-1A

        用的是 Xshell 5 使用的是 adb

        具体 adb 的安装配置移步:

[初识 ADB ]-安卓调试桥_燃吹的博客-CSDN博客ADB 简介与获取安装ADB 调试桥简介获取 ADBWindows 安装 ADB命令行永久配置 adb 环境变量一些简单的 ADB 命令本站资源好人哦https://blog.csdn.net/m0_67268286/article/details/125022540        如下 连上了 CM311-1A

  1. Xshell 5 (Build 0964)
  2. Copyright (c) 2002-2016 NetSarang Computer, Inc. All rights reserved.
  3. Type `help' to learn how to use Xshell prompt.
  4. [c:\~]$ cd /adb /* 进入 adb 目录 */
  5. [C:\adb]$ adb devices /* 查看连接 */
  6. List of devices attached
  7. [C:\adb]$ adb connect 192.168.0.101 /* 根据 CM311-1A IP 连接 */
  8. connected to 192.168.0.101:5555
  9. [C:\adb]$ adb devices /* 再次查看连接 发现连接成功 */
  10. List of devices attached
  11. 192.168.0.101:5555 device
  12. [C:\adb]$ adb shell /* 已经进入 CM311-1A 系统 但是 Xshell 并没有显示提示符 */
  13. pwd /* 我输入的命令 */
  14. / /* 返回的结果 */

        注意 Xshell 并没有显示提示符号 如果不习惯可以使用 cmd :

  1. Microsoft Windows [版本 6.3.9600]
  2. (c) 2013 Microsoft Corporation。保留所有权利。
  3. C:\Users\byme>adb shell /* 请求一个盒子终端 */
  4. cmcc_jiangsu:/ # pwd /* 查看当前位置 */
  5. /
  6. cmcc_jiangsu:/ # exit /* 退出 */
  7. C:\Users\byme>mkdir CM311-1A /* 新建一个测试目录 */
  8. C:\Users\byme>cd CM311-1A /* 进入测试目录 */
  9. C:\Users\byme\CM311-1A>adb shell /* 请求一个终端 以后在该目录下载文件 */
  10. cmcc_jiangsu:/ # cd sdcard/Pictures/Screenshots
  11. cmcc_jiangsu:/sdcard/Pictures/Screenshots # pwd
  12. /sdcard/Pictures/Screenshots
  13. cmcc_jiangsu:/sdcard/Pictures/Screenshots # ls
  14. cmcc_jiangsu:/sdcard/Pictures/Screenshots #

%%%%%

查看机器型号

  1. cmcc_jiangsu:/ # getprop ro.product.model
  2. CM311-1a-YST
  3. cmcc_jiangsu:/ #

%%%%%

查看安卓 ID

  1. cmcc_jiangsu:/ # settings get secure android_id
  2. c32cooxx52113149
  3. cmcc_jiangsu:/ #

%%%%%

查看安卓系统版本

  1. cmcc_jiangsu:/ # getprop ro.build.version.release
  2. 9
  3. cmcc_jiangsu:/ #

——————————

使用命令调整分辨率以及 DPI

%%%%%

常用尺寸单位概念一览

        Screen size/屏幕尺寸

指的是手机实际的物理尺寸

比方经常使用的 2.8 英寸、3.2 英寸、3.5 英寸、3.7 英寸

        Aspect Ratio/宽高比率

指的是实际的物理尺寸宽高比率

分为 long 和 nolong

        Resolution/分辨率

和电脑的分辨率概念一样

指手机屏幕纵、横方向像素个数

        DPI/dot per inch

每英寸像素数

如 120 dpi、160 dpi 等

        Density/密度

屏幕里像素值浓度

resolution/Screen size 能够反映出手机密度

        dip/Density-independent pixel

指的是逻辑密度计算单位

dip 和详细像素值的相应公式是 dip/pixel = dpi 值 / 160 也就是 px = dp * (dpi / 160)

  1. px/pixel/像素 屏幕上像素点单位
  2. in/inch/英寸 长度单位
  3. dpi/dpi 密度 屏幕单位面积内的像素数
  4. dp/dip/device independent pixels/设备独立像素 基于屏幕密度的抽象单位 在每英寸 160 点的显示器上的话 1dp = 1px
  5. sp/scaled pixels/缩放像素 主要用于字体显示与刻度无关的一种像素 可以根据用户的字体大小首选项进行缩放
  6. 单位换算:
  7. px 和 dp 换算公式为 px = dp * (dpi / 160)

%%%%%

像素/xp 与像素密度和分辨率概念

        像素是手机屏幕上可显示的最小单位 与物理设备有关

屏幕上显示的像素个数 单位是 像素/px
1 px = 1 像素点

        单位尺寸内像素点越多分辨率越高 显示效果就越精细和细腻

        像素密度:

一个 dpi 可以显示多少个像素

        dp/dpi 直接来说就是一英寸多少个像素点 常见取值 120、160、240 一般称作像素密度 简称密度

  1. density 直接翻译的话叫 密度
  2. 常见取值
  3. 1.5
  4. 1.0
  5. 和标准 dpi 的比例 160 px/inc

        而分辨率是指横纵两个方向的像素点的数量

        安卓手机设备常见取值 480x800、320x480

  1. 关于 APP 启动图标:
  2. ldpi 120 dpi 图标大小为 36x36 px
  3. mdpi 160 dpi 图标大小为 48x48 px
  4. hdpi 240 dpi 图标大小为 72x72 px
  5. xhdpi 320 dpi 图标大小为 96x96 px
  6. xxhdpi 480 dpi 图标大小为 144x144 px
  7. xxxhdpi 640 dpi 图标大小为 192x192 px

%%%%%

dpi 概念

        常见的分辨率与 DPI 对应值:

  1. 常用分辨率 DPI 值
  2. 320x240 160
  3. 720x1280 320
  4. 1080x1920 480
  5. 2160x3084 640

        DPI 是 Dots Per Inch 的缩写 中文为每英寸面积内的像素点数 是一个量度单位 常用于衡量打印机、鼠标等设备的分辨率

  1. 每英寸像素多少
  2. 即每一块空间有多少像素点
  3. 平常所说的 1920x1080 只是像素数量 也就是 1920 px * 1080 px
  4. 代表手机高度上有 1920 个像素点 宽度上有 1080 个像素点
  5. densityDpi 就是我们常说的 dpi

        DPI 又可细分为水平分辨率和垂直分辨率

        例如一张

1 英寸 * 1 英寸

        的图片 如果她的

水平分辨率是 100 DPI

垂直分辨率是 50 DPI

        那么就是说她

水平每英寸分成 100 小段

垂直每英寸分成 50 小段

1 英寸等于 2.54 厘米

        DPI 代表每英寸上存在的点数 她决定了显示器的清晰度和清晰度

        这是由屏幕的大小及其分辨率决定的

        DPI 越高 在显示器上可以识别的单个像素就越少

        这也取决于观看屏幕的距离 在足够长的距离处人眼将无法辨别单个像素 不管 DPI 是多少看起来是一样的

        要想判别手机屏幕的显示好坏 还要考虑屏幕的 宽高/英寸

        也就是用 dpi

        即每英寸多少像素来评价屏幕的显示效果

        不然假如手机分辨率是 1920x1080 但是屏幕是几十寸的

        那显示效果将不会很好 甚至你有可能看到小的像素块 那将更影响视觉效果

  1. Android 不同分辨率对应不同密度适配表:
  2. 密度类型 分辨率 PX 密度范围 DPI 比例
  3. ldpi 低密度 240x320 0~120 3
  4. mdpi 中等密度 320x480 120~160 4
  5. hdpi 高密度 480x800 160~240 6
  6. xhdpi 超高密度 1080x1920 240~320 8
  7. xxhdpi 超清密度 1080x1920 320~480 12
  8. xxxhdpi 超高清密度 2160x3840 480~640 16

        在 Android 中规定以 160 dpi 即屏幕分辨率为 320x480 为基准 1dp = 1px

        px 和 dp的换算公式:

px = dp * (dpi / 160)

%%%%%

dp/dip 与 sp 解读

        sp 用于设置字体大小 会跟随系统字体大小自动调节字体显示的大小

        dp 是长度单位!是 Density-independent pixel 的缩写

        dp 是 Android 开发上的基于屏幕密度的一种密度无关的像素单位

与物理设备无关 同样尺寸的屏幕 使用 dp 设置的尺寸一样!

        Android 屏幕适配由来已久 关键在于屏幕尺寸与屏幕分辨率的变化巨大

        在成千上百种机型面前 px 单位早已难以适应

        如果使用多套 px 文件方案来适配,市面上少说上百种寸,需要的文件太多了

        同样尺寸上不同分辨率不同 density 的设备每 1 dp 所代表的像素数量是不一样的

        但是所表示的物理长度是一样的!!!

160 dp 等于 1 in 就是 1 英寸等于 2.54 厘米

        至此 dp 单位的使用就意味着你在这些同样尺寸但是不同分辨率的设备上看到的大小一样

        此时各设备上显示的比例也就一致了……

  1. 其实 dp 就是为了使得开发者设置的长度能够根据不同屏幕 分辨率/尺寸
  2. 也就是 dpi 获得不同的 像素/px 数量
  3. 比如我将一个控件设置长度为 1 dp
  4. 那么在 160 dpi 上该控件长度为 1 px
  5. 而在 240 dpi 的屏幕上该控件的长度为 1 * 240 / 160 为 1.5 个像素点
  6. 也就是 dp 会随着不同屏幕而改变控件长度的像素数量
  7. 关于 dp 的官方叙述为当屏幕每英寸有 160 个像素时
  8. 也就是 160 dpi 则 dp 是与 px 等价的
  9. 那如果每英寸 240 个像素呢?
  10. 1 dp 为
  11. 1 * 240 / 160 = 1.5 px
  12. 即 1 dp 与 1.5 px 等价了
  13. 其实记住一点:
  14. dp 最终都要化为像素数量来衡量大小的
  15. 因为只有像素数量最直观!
  16. 通常来说我们写程序时几乎没用到计算 dp
  17. 就是直接凭着自己的感觉写的 如果想精确设置控件大小也可以研究一下怎么计算
  18. dp 是最常用但也最难理解的尺寸单位 她与 像素密度 密切相关
  19. 什么是像素密度
  20. 假设有一部手机屏幕的物理尺寸为 1.5 英寸 x 2 英寸
  21. 屏幕分辨率为 240x320
  22. 则我们可以计算出在这部手机的屏幕上每英寸包含的像素点的数量为
  23. 横向 240 / 1.5 = 160 dpi
  24. 纵向 320 / 2 = 160 dpi
  25. 160 dpi 就是这部手机的像素密度
  26. 像素密度的单位 dpi 是 Dots Per Inch 的缩写 即每英寸像素数量
  27. 横向和纵向的这个值都是相同的 原因是大部分手机屏幕使用正方形的像素点
  28. 不同的 手机/平板 可能具有不同的像素密度
  29. 例如同为 4 寸手机 有 480x320 分辨率的也有 800x480 分辨率的
  30. 前者的像素密度就比较低
  31. Android 系统定义了四种像素密度:
  32. 低 120 dpi
  33. 中 160 dpi
  34. 高 240 dpi
  35. 超高 320 dpi
  36. 她们对应的 dp 到 px 的系数分别为
  37. 0.75
  38. 1
  39. 1.5
  40. 2
  41. 这个系数乘以 dp 长度就是像素数
  42. 例如界面上有一个长度为 80 dp 的图片
  43. 那么她在 240 dpi 的手机上实际显示为 80 x 1.5 = 120 px
  44. 在 320 dpi 的手机上实际显示为 80 x 2 = 160 px
  45. 如果你拿这两部手机放在一起对比 会发现这个图片的物理尺寸差不多
  46. 这就是使用 dp 作为单位的效果
  47. dip 与 dp 完全相同只是名字不同而已
  48. 在早期的 Android 版本里多使用 dip 后来为了与 sp 统一就建议使用 dp 这个名字了

        dp/dip 和 sp 基本类似
        如果设置表示长度、高度等属性时可以使用 dp 或 sp
        但如果设置字体只能使用 sp

  1. sp 是与缩放无关的抽象像素 Scale-independent Pixel
  2. sp 和 dp 很类似但唯一的区别是 Android 系统允许用户自定义文字尺寸大小
  3. 正常
  4. 超大
  5. 等等
  6. 当文字尺寸是 正常 时 1 sp = 1 dp = 0.00625 英寸
  7. 而当文字尺寸是 大 或 超大 时 1 sp > 1 dp = 0.00625 英寸
  8. 类似我们在 windows 里调整字体尺寸以后的效果:
  9. 窗口大小不变
  10. 只有文字大小改变
  11. 还有几个用的比较少的单位:
  12. mm 毫米
  13. in 尺寸/英寸 1 英寸 = 2.54 厘米
  14. pt 磅 1 pt = 1/72 英寸 = 0.035 厘米

        dp 是与密度无关的

        sp 除了与密度无关外还与 scale 无关
        如果屏幕密度为 160 时 dp 和 sp 和 px 是一样的 此时 1 dp 是 1 sp 是 1 px

  1. 但如果使用 px 作单位
  2. 若屏幕大小不变 假设还是 3.2 寸
  3. 而屏幕密度变成了 320
  4. 那么原来 TextView 的宽度设成 160 px
  5. 在密度为 320 的 3.2 寸屏幕里看要比在密度为 160 的 3.2 寸屏幕上看短了一半
  6. 但如果设置成 160 dp 或 160 sp 的话 系统会自动将 width 属性值设置成 320 px 的
  7. 也就是 160 * 320 / 160
  8. 其中 320 / 160 可称为密度比例因子
  9. 也就是说如果使用 dp 和 sp 系统会根据屏幕密度的变化自动进行转换

        dp 也可以理解成相对大小

文字的尺寸一律用 sp 单位

非文字的尺寸一律使用 dp 单位

%%%%%

介绍一下 wm 命令

        输入 wm 会输出帮助信息:

  1. cmcc_jiangsu:/sdcard/Pictures/Screenshots # wm
  2. Window manager (window) commands:
  3. help
  4. Print this help text. /* 打印此帮助文本 */
  5. size [reset|WxH|WdpxHdp]
  6. Return or override display size. /* 返回或替代显示大小 */
  7. width and height in pixels unless suffixed with 'dp'. /* 宽度和高度为像素 除非后缀为 'dp' */
  8. density [reset|DENSITY]
  9. Return or override display density. /* 返回或覆盖显示密度 */
  10. overscan [reset|LEFT,TOP,RIGHT,BOTTOM]
  11. Set overscan area for display. /* 设置显示的过扫描区域 */
  12. scaling [off|auto]
  13. Set display scaling mode. /* 设置显示缩放模式 */
  14. dismiss-keyguard
  15. Dismiss the keyguard, prompting user for auth if necessary. /* 关闭键盘,必要时提示用户进行身份验证 */
  16. tracing (start | stop)
  17. Start or stop window tracing. /* 启动或停止窗口跟踪 */
  18. 255|cmcc_jiangsu:/sdcard/Pictures/Screenshots #

%%%%%

wm size/分辨率 与 wm density/像素密度

        最常用的两个选项当属 size 和 density 了!

  1. wm size 查看设置显示分辨率:
  2. wm size /* 查看当前分辨率 */
  3. wm size 1920x1080 /* 设置分辨率为 1920x1080 注意是小写的 X 字母而不能用 * 符号 */
  4. wm size reset /* 恢复缺省值 */
  5. wm density 查看设置显示密度:
  6. wm density /* 查看当前显示密度 */
  7. wm density 80 /* 修改显示密度为 80 */
  8. wm density reset /* 恢复默认值 */

        示例:

  1. cmcc_jiangsu:/sdcard/Pictures/Screenshots # wm size
  2. Physical size: 1920x1080
  3. cmcc_jiangsu:/sdcard/Pictures/Screenshots # wm density
  4. Physical density: 240
  5. cmcc_jiangsu:/sdcard/Pictures/Screenshots #

%%%%%

wm overscan 设置显示区域

        wm overscan 设置显示区域

  1. wm overscan 100,200,300,400 /* 设置显示区域边缘的像素数 顺序为左上右下 */
  2. wm overscan reset /* 恢复显示区域 */

——————————

关于 FPS 帧率/刷新率

%%%%%

帧率概念

        帧率就是一秒内屏幕刷新的次数

即一秒内显示了多少帧的图像

        单位 Hz/赫兹

        如常见的

60 Hz

90 Hz

120 Hz 高刷新率

        刷新频率取决于硬件的固定参数 这个是不会变的

        FPS 是图像领域中的定义 是指画面每秒传输帧数

通俗来讲就是指动画或视频的画面数

        FPS 是测量用于保存、显示动态视频的信息数量

        每秒钟帧数愈多 所显示的动作就会愈流畅

        一般来说 Android 设备的屏幕刷新率为 60 帧/s

        要保持画面流畅不卡顿 要求每一帧的时间不超过 1000 / 60 = 16.6 ms

        这就是 16 ms 的黄金准则

        如果中间的某些帧的渲染时间超过 16 ms 就会导致这段时间的画面发生了跳帧 因此原本流畅的画面变发生了卡顿

        注意 下面只是如何查看帧率 怎么修改帧率暂时不知道

        只能通过上面修改分辨率了……

%%%%%

使用 dumpsys gfxinfo 测试 fps 性能流畅度

        使用命令

dumpsys gfxinfo [测试程序包名]

        可以测试帧率

        也可以将输出结果输出到一个文件中:

dumpsys gfxinfo > /tmp/1.log

        之后打开 1.log 文件便会看到如下的信息:

每一行为每一帧的各个渲染阶段所耗时间

总时间即为每一帧所耗时间

超过 16 毫秒则说明不够流畅

因此能够考虑两个结果

一是平均 FPS

二卡顿率 超过 16 ms 的帧数/总帧数 clas

%%%%%

通过 dumpsys SurfaceFlinger 获取 fps

        通过如下命令可以直接查看当前 FPS 帧率:

  1. cmcc_jiangsu:/ # dumpsys SurfaceFlinger | grep -Ei "MaxBrightness|fps"
  2. refresh-rate : 60.000002 fps
  3. cmcc_jiangsu:/ #

        或者:

  1. cmcc_jiangsu:/ # dumpsys SurfaceFlinger | grep fps
  2. refresh-rate : 60.000002 fps
  3. cmcc_jiangsu:/ #

        如果想查看更详细的信息请输出到指定文件:

dumpsys SurfaceFlinger > /tmp/1.txt

%%%%%

通过 dumpsys window displays 查看 fps

        筛选 fps 信息:

  1. cmcc_jiangsu:/ # dumpsys window displays | grep fps
  2. mDisplayInfo=DisplayInfo{"内置屏幕", uniqueId "local:0", app 1920 x 1080, rea
  3. l 1920 x 1080, largest app 1920 x 1884, smallest app 1080 x 1044, mode 1, defaul
  4. tMode 1, modes [{id=1, width=1920, height=1080, fps=60.000004}], colorMode 0, su
  5. pportedColorModes [0], hdrCapabilities android.view.Display$HdrCapabilities@4140
  6. 79f7, rotation 0, density 240 (79.0 x 70.0) dpi, layerStack 0, appVsyncOff 10000
  7. 00, presDeadline 16666666, type BUILT_IN, state ON, FLAG_SECURE, FLAG_SUPPORTS_P
  8. ROTECTED_BUFFERS, removeMode 0}
  9. cmcc_jiangsu:/ #

        查看所有信息:

  1. cmcc_jiangsu:/ # dumpsys window displays
  2. WINDOW MANAGER DISPLAY CONTENTS (dumpsys window displays)
  3. Display: mDisplayId=0
  4. init=1920x1080 240dpi cur=1920x1080 app=1920x1080 rng=1080x1044-1920x1884
  5. deferred=false mLayoutNeeded=false mTouchExcludeRegion=SkRegion((0,0,1920,10
  6. 80))
  7. mLayoutSeq=38
  8. Application tokens in top down Z order:
  9. mStackId=0
  10. mDeferRemoval=false
  11. mBounds=[0,0][1920,1080]
  12. taskId=72
  13. mBounds=[0,0][1920,1080]
  14. mdr=false
  15. appTokens=[AppWindowToken{3ba4e1c token=Token{4e82b8f ActivityRecord{864
  16. 1aee u0 com.dangbei.tvlauncher/.IndexActivity t72}}}]
  17. mTempInsetBounds=[0,0][0,0]
  18. Activity #0 AppWindowToken{3ba4e1c token=Token{4e82b8f ActivityRecord{
  19. 8641aee u0 com.dangbei.tvlauncher/.IndexActivity t72}}}
  20. windows=[Window{88f706e u0 com.dangbei.tvlauncher/com.dangbei.tvlaun
  21. cher.IndexActivity}]
  22. windowType=2 hidden=false hasVisible=true
  23. app=true mVoiceInteraction=false
  24. task={taskId=72 appTokens=[AppWindowToken{3ba4e1c token=Token{4e82b8
  25. f ActivityRecord{8641aee u0 com.dangbei.tvlauncher/.IndexActivity t72}}}] mdr=fa
  26. lse}
  27. mFillsParent=true mOrientation=0
  28. hiddenRequested=false mClientHidden=false reportedDrawn=true reporte
  29. dVisible=true
  30. mNumInterestingWindows=1 mNumDrawnWindows=1 inPendingTransaction=fal
  31. se allDrawn=true lastAllDrawn=true)
  32. startingData=null removed=false firstWindowDrawn=true mIsExiting=fal
  33. se
  34. controller=AppWindowContainerController{ token=Token{4e82b8f Activit
  35. yRecord{8641aee u0 com.dangbei.tvlauncher/.IndexActivity t72}} mContainer=AppWin
  36. dowToken{3ba4e1c token=Token{4e82b8f ActivityRecord{8641aee u0 com.dangbei.tvlau
  37. ncher/.IndexActivity t72}}} mListener=ActivityRecord{8641aee u0 com.dangbei.tvla
  38. uncher/.IndexActivity t72}}
  39. homeStack=Stack=0
  40. DockedStackDividerController
  41. mLastVisibility=false
  42. mMinimizedDock=false
  43. mAdjustedForIme=false
  44. mAdjustedForDivider=false
  45. PinnedStackController
  46. defaultBounds=[1455,808][1896,1056]
  47. movementBounds=[24,60][1896,1056]
  48. mIsImeShowing=false
  49. mImeHeight=0
  50. mIsShelfShowing=false
  51. mShelfHeight=0
  52. mReentrySnapFraction=-1.0
  53. mIsMinimized=false
  54. mActions=[]
  55. mDisplayInfo=DisplayInfo{"内置屏幕", uniqueId "local:0", app 1920 x 1080, rea
  56. l 1920 x 1080, largest app 1920 x 1884, smallest app 1080 x 1044, mode 1, defaul
  57. tMode 1, modes [{id=1, width=1920, height=1080, fps=60.000004}], colorMode 0, su
  58. pportedColorModes [0], hdrCapabilities android.view.Display$HdrCapabilities@4140
  59. 79f7, rotation 0, density 240 (79.0 x 70.0) dpi, layerStack 0, appVsyncOff 10000
  60. 00, presDeadline 16666666, type BUILT_IN, state ON, FLAG_SECURE, FLAG_SUPPORTS_P
  61. ROTECTED_BUFFERS, removeMode 0}
  62. DisplayFrames w=1920 h=1080 r=0
  63. mStable=[0,0][1920,1080]
  64. mStableFullscreen=[0,0][1920,1080]
  65. mDock=[0,0][1920,1080]
  66. mCurrent=[0,0][1920,1080]
  67. mSystem=[0,0][1920,1080]
  68. mContent=[0,0][1920,1080]
  69. mVoiceContent=[0,0][1920,1080]
  70. mOverscan=[0,0][1920,1080]
  71. mRestrictedOverscan=[0,0][1920,1080]
  72. mRestricted=[0,0][1920,1080]
  73. mUnrestricted=[0,0][1920,1080]
  74. mDisplayInfoOverscan=[0,0][0,0]
  75. mRotatedDisplayInfoOverscan=[0,0][0,0]
  76. mDisplayCutout=com.android.server.wm.utils.WmDisplayCutout@3c1
  77. cmcc_jiangsu:/ #

%%%%%

settings 查看 system 和 global 相关的信息

        在该命令下面看到 peak_refresh_rate/峰值刷新率

  1. cmcc_jiangsu:/ # settings list system
  2. /* … … */
  3. peak_refresh_rate/=d
  4. peak_refresh_rate=/d
  5. /* … … */

        并没有看到最小刷新率 min_refresh_rate

        还看到了两个相关的:

  1. cmcc_jiangsu:/ # settings get global window_animation_scale
  2. 1.0
  3. cmcc_jiangsu:/ # settings get global transition_animation_scale
  4. 0.0

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/318686
推荐阅读
相关标签
  

闽ICP备14008679号