我想为Android实现某种远程协助工具(如vnc)。有没有可能以编程方式在设备上捕获屏幕?
发布于 2010-08-27 17:12:51
像这样的东西可能会对你有用:
View v = view.getRootView();
v.setDrawingCacheEnabled(true);
Bitmap b = v.getDrawingCache();发布于 2010-08-27 19:58:30
android-developers上对此有很长的讨论,但简短的答案是:目前你不能以编程方式截取安卓设备的屏幕截图,除非
安卓Manifest权限READ_FRAME_BUFFER已经存在(参见here接口文档),但目前只能由系统应用使用。造成这种情况的原因有很多,其中之一是它存在安全风险。如果背景可以随时截取手机屏幕的截图,那么人们就可以使用OCR技术在用户输入密码时嗅探他们的密码,以及其他私人信息。
因此,如果没有root,VNC应用程序目前是不可能的。要从你的电脑上截图(当手机通过usb插入时),你可以使用DDMS。
发布于 2010-09-07 21:57:49
你可以尝试下面的库: Android Library ( http://code.google.com/p/android-screenshot-library/ )能够以编程方式从安卓设备捕获屏幕截图,而不需要拥有root访问权限。相反,ASL利用在后台运行的本机服务,通过Android Debug Bridge (ADB)在每次设备引导时启动一次。
https://stackoverflow.com/questions/3582603
复制相似问题