首页 > 解决方案 > 如何获得 Android 虚拟设备的实际调整大小?

问题描述

我正在为 Android 应用程序开发可视化测试工具。要获得与其他现有工具(例如,Sikuli)兼容的屏幕截图,我需要知道运行应用程序的 Android 虚拟设备的确切屏幕大小。有没有办法以编程方式获取它?

我尝试使用 Display 类的方法:

            Display display = getWindowManager().getDefaultDisplay();
            Point size = new Point();
            display.getSize(size);
            int display_width = size.x;
            int display_height = size.y;

然而,这总是返回模拟设备的分辨率(在我的情况下为 1920*1080),而不是桌面 PC 屏幕上实际调整大小的尺寸。

标签: androidandroid-studioavd

解决方案


如果我理解正确并且唯一的目的 - 从虚拟设备截取屏幕截图 - 您可以执行以下操作:

1)使用以下命令截取屏幕截图(如果您想将其称为其他名称,可以更改 screenshot.png):adb shell screencap -p /sdcard/screenshot.png。

2)将图片拉到电脑上:adb pull /sdcard/screenshot.png。

3) 从您的设备中删除屏幕截图:adb shell rm /sdcard/screenshot.png。


推荐阅读