如何在Android上以编程方式截取屏幕截图?

时间:2011-09-22 11:54:33

标签: android screenshot

我想以编程方式拍摄全屏截图, 例如,android主屏幕或菜单之一。 如何在应用程序中查看主屏幕? 我想以编程方式接受它! 它是否需要root模式无关紧要!

请帮帮我,抱歉我的英文!

3 个答案:

答案 0 :(得分:13)

使用以下代码

Bitmap bitmap;
View v1 = MyView.getRootView();
v1.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);

此处MyView是我们需要在屏幕中包含的视图。

答案 1 :(得分:6)

点击链接 https://code.google.com/p/android-screenshot-library/downloads/list  它允许您不仅是您的应用程序的任何屏幕的整个屏幕截图

adb shell / system / bin / screencap -p /sdcard/img.png 这是一个shell命令,截屏简单快捷

试试这个

Process sh = Runtime.getRuntime().exec("su", null,null);
   OutputStream  os = sh.getOutputStream();
   os.write(("/system/bin/screencap -p " + "/sdcard/img.png").getBytes("ASCII"));
            os.flush();
            os.close();
            sh.waitFor();

答案 2 :(得分:0)

在adb shell中,您可以使用命令

adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell rm /sdcard/screen.png

我在How to take a screenshot on Android上的本指南中找到了此代码。您可以参考它以获取更多详细信息。希望这有帮助。