我安装的Droid VNC服务器在我的平板电脑。 我也签出它在源http://github.com/oNaiPs/droid-VNC-server ,但我不觉得它捕获屏幕,并上传到浏览器代码的任何一行。 那么它是怎样工作的? 它如何录制Droid的屏幕?
Answer 1:
看看在JNI的/ VNC /文件夹 。 当然看起来像一个VNC服务器给我。
Answer 2:
它有3种模式,试图读出屏幕:
- 帧缓冲区
- SurfaceFlinger的
- Gralloc
我只试过在Android x86和只得到了帧缓冲模式下工作。 据称2.如果你是在ARM 3.更好地工作。 基本上,做直接读取帧缓冲设备(的/ dev /图形/ FB0像在Linux上)什么。 通过读我的意思是采取一系列屏幕“快照”,并将其作为它请求屏幕更新发送到VNC客户端。 帧缓冲设备是其中的Android写入其屏幕内容,然后将其之间的层又通过图形管线硬件(图形显示芯片 - >屏幕)通过。 想的帧缓冲区只是被像在视频中的帧,一系列帧进行视频,象帧的缓冲器表示屏幕的实际动态变化的内容。
至于输入德罗伊德VNC服务器接收指针和关键事件通过网络,处理它们,然后将它们发送到的/ dev /输入装置的Android然后处理,就好像它们是本地键盘或鼠标输入。
文章来源: How Droid VNC works?