Android Graphics 显示系统 - 如何模拟多(物理)显示屏?

“ 本着花小钱办大事,不花钱也办事的原则,为了避免花钱买设备,那如何更便捷地学习/测试Android多屏显示的内容呢?本文就给大家介绍一种模拟Android多个物理屏幕显示的方法。

 

01

Android Emulator旧方式的缺憾

 

早前的文章中,曾经介绍了使用Android Emulator模拟多屏显示的方法

Android Emulator - 模拟器多屏输出

这种方法可以满足一定的测试需求,但缺憾是只有主屏是物理屏幕,其他副屏都只是虚拟屏幕。

dumpsys SurfaceFlinger看两个Display的信息:

主屏 isVirtual=false

副屏 isVirtual=true

dumpsys display看两个Display的信息:

主屏 type INTERNAL

副屏 type VIRTUAL

在日益复杂的应用场景下,仅模拟虚拟屏幕出来已无法满足开发测试的需求,那有没有模拟多个物理屏幕的方法呢?接下来就介绍一种Google官方推荐的方法。

 

02

多(物理)显示屏

 

先看看模拟出来的多显示屏的效果。整一个三屏幕的,设置三个屏幕的大小

  • display0 :width=720,height=1280
  • display1 :width=1920,height=1080
  • display2 :width=720,height=1280

瞅瞅效果怎么样?

 

再检查下是不是都是物理屏,而不是虚拟屏呢?
dumpsys SurfaceFlinger看三个Display的信息:
三块屏幕都是 isVirtual=false

 

 

 

dumpsys display看两个Display的信息:

Display 0,主屏是内置屏幕

 

Display 2,副屏是一块HDMI外置屏幕

Display 3,副屏是一块HDMI外置屏幕

 

 

 

03

多(物理)显示屏模拟方法

 

Android Graphics 显示系统 - 如何模拟多(物理)显示屏?

 

 

 

 

 

posted on 2024-02-04 11:13  二的次方  阅读(857)  评论(0编辑  收藏  举报