关于Android手机屏幕内容获取
凌枫 2015-03-25 11:23:40 现在用C写一个程序,要获得屏幕的内容映射到内存中,然后再进行其他操作。目前的办法是对/dev/graphics/fb0进行打开,然后调用mmap进行映射到内存就可以。代码如下所示:
#define FB_DEVICE "/dev/graphics/fb0"
int fbfd =open(FB_DEVICE, O_RDONLY);
unsigned short int *fbmmap = MAP_FAILED;
fbmmap = mmap(NULL, pixels * bytespp, PROT_READ, MAP_SHARED, fbfd, 0);
但现在有个问题,就是有一些机型,不知道是Android系统版本太高,还是什么原因,利用上述办法的时候,得不到屏幕内容,导致我后续的一些功能都无法实现。并且直接cat fb0文件,都不显示任何内容。
我上面的这段代码,有没有其他的实现方式,能够得到屏幕内容映射到内存中去?