我正在工作在安卓上的一个应用程序,这将分享屏幕给另一个安卓device.This应用程序将在后台运行的服务。
我想捕获屏幕(当前屏幕),将其另存为JPEG,并通过UDP将其持续发送到其他Android设备。
但我的问题是如何通过捕获帧缓冲区来捕获当前屏幕。
请帮帮忙。
发布于 2011-12-26 17:16:48
发布于 2011-12-27 05:15:19
Android帧缓冲区(以及其他linux系统上的)可以通过打开/dev/graphics/fb0设备来访问。这需要root访问权限,即使使用root访问权限,它也不会在所有设备上正常工作。大多数设备使用一对帧缓冲区并在它们之间切换。更大的问题是,即使有了根电话,Dalvik机器的用户ID也没有访问帧缓冲(fb0)设备的特权。这意味着您永远不能直接从fb0代码打开和读取Java设备。您将需要以根用户身份运行本地linux应用程序,它将能够访问fb0 (在用户授予权限之后)。我成功地完成了这项工作,这是相当具有挑战性的,也是谷歌不赞成的。我仍然有可能将其转化为商业应用程序,但其局限性和不兼容性使得这种可能性非常低。
https://stackoverflow.com/questions/8634307
复制相似问题