2011-09-22 38 views
11

我想以编程方式拍摄全屏截图,例如,其中一个是android主屏幕或菜单。 如何在我的应用程序中查看主屏幕? 我想以编程方式! 它是否需要根模式并不重要!如何以编程方式截图?

请帮助我,对不起我的英语!

+0

哦,快点!刚刚意识到(发布我的答案当然-_-):你的意思是从一个Android应用程序? – 2011-09-22 12:04:13

+8

我想把它编程! – Nolesh

+1

这个问题呢?http://stackoverflow.com/questions/2661536/screenshot-android – Tima

回答

13

使用下面的代码

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

这里MyView的是,通过浏览我们需要包括在屏幕上。

+6

这只是截取活动应用程序的屏幕截图。不是整个android屏幕。 –

+0

@NguyenMinhBinh ..请看看..http://stackoverflow.com/questions/3067586/how-to-capture-the-android-device-screen-content/8504958#8504958 .....这可能有助于你... –

6

按照链接 https://code.google.com/p/android-screenshot-library/downloads/list 它可以让你的任何屏幕不仅是你的应用程序

亚行外壳/系统/斌/撷取画面的整个屏幕截图-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(); 
+0

我有2个设备(Android v2.2&v2.3.3),在'/ system/bin'目录中没有'screencap'文件。所以它不适合我。 – Nolesh

+0

@ares你可以尝试上面的链接。 –

+0

你会更多地描述cz我试过但我没有得到结果? –

0

在亚行外壳,您可以使用命令

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上发现了这个指南的代码。你可以参考它来获得更多细节。希望这有助于。

相关问题