android - 使用 ddmlib.jar 获取 Android 设备方向

标签 android screenshot

我正在开发一个程序,允许用户通过使用 ddmlib 库在他的计算机屏幕上显示他的 android 手机(通过 USB 连接到计算机)的当前屏幕。我需要知道手机是横向模式还是纵向模式。

有没有办法从计算机上运行的程序中检查这个值?

最佳答案

这是我获取它的函数,但速度很慢。现在我正在寻找更快的解决方案。

private int getLandscape() {
        int result = 0;
        try {
            String[] commands = new String[] { "adb", "-s", actualSerial,
                    "shell", "dumpsys input | grep 'SurfaceOrientation'" };
            Runtime rt = Runtime.getRuntime();
            Process pr;
            pr = rt.exec(commands);
            BufferedReader input = new BufferedReader(new InputStreamReader(
                    pr.getInputStream()));
            String line = "";
            line = input.readLine();
            if (line != null) {
                String[] lines = line.split(":");
                result = Integer.parseInt(lines[1].trim());
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return result;
    }

最慢的部分是从 BufferedReader 读取。

关于android - 使用 ddmlib.jar 获取 Android 设备方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5566553/

相关文章:

android - 抽屉导航中的 Google Play 图书使用什么字体?

javascript - 如何截取youtube屏幕截图

c# - 以编程方式截取网页的屏幕截图

android - 在 CursorAdapter 中加入多条记录

java - 如何在 Android 中检查 GridView 是否为空?

android - 如何使用此库截取 Android(Emulator) 的屏幕截图以及我在哪里可以获得屏幕截图

android - 在 Android 4.0+ 上检测屏幕截图尝试

javascript - html2canvas 教程?

android - Android SQLite 游标是否一次将所有记录加载到内存中?

android - 如何解决这个硬编码字符串的问题?