截取当前屏幕截图

use*_*154 6 android screenshot

我正在研究Android上的应用程序,它将共享屏幕到另一个Android设备.这个应用程序将作为服务在后台运行.

我想捕获屏幕(当前屏幕),将其保存为JPEG并通过UDP连续发送到其他Android设备.

但我的问题是如何通过捕获帧缓冲来捕获当前屏幕.

请帮忙.

Bit*_*ank 7

通过打开/ dev/graphics/fb0设备访问Android帧缓冲区(以及其他Linux系统).这需要root访问权限,即使使用root访问权限,它也无法在所有设备上正常运行.大多数设备使用一对帧缓冲器并在它们之间切换.更大的问题是即使使用root电话,Dalvik机器的用户ID也没有权限访问帧缓冲区(fb0)设备.这意味着您永远无法直接从Java代码打开和读取fb0设备.您将需要以root身份运行本机Linux应用程序,它将能够访问fb0(在用户授予之后).我成功地完成了这项工作,这是非常具有挑战性的,也是谷歌不赞成的.我仍然可能将其转变为商业应用程序,但限制和不兼容性使得概率非常低.


dro*_*kid 3

您可以通过启用来截取布局的屏幕截图

setDrawingCacheEnabled(true);
Run Code Online (Sandbox Code Playgroud)

的视图。

检查此链接