Android截图功能实现
16lz
2022-04-26
Android截图功能实现
android下截屏的思路很简单,就是去读framebuffer,android下framebuffer在/dev/graphics/fb0而不是linux下的/dev/fb0,读完以后保存图像数据到文件即可。至于保存成png格式还是jpg格式都可以,有相应的库支持就可以了。我承认,我没有完全的把这个功能作完整,因为碰到了权限的问题。也就是在打开/dev/graphics/fb0这个文件因为没有权限的缘故而失败了,那么接下来的读取framebuffer的步骤也就没有办法执行了。
目前所能做到的则是将截屏程序编译成可执行程序,在有root权限的机器上执行这个可执行程序,运行正常。
当我把代码编译成动态链接库,在java端调用时,不能够成功。这是因为权限的问题,权限被屏蔽的这部分代码可以在android的源码:system/core/init/devices.c中找到,可以看到只有root用户或者属于graphics组的用户才可以访问/dev/graphics/fb0
不知道这个问题如何解决,如果有哪位哥们知道解决方案,盼望告诉我,先谢啦。
我就不发代码了,李先静的博客里面 有个例子,可以直接使用。
更多相关文章
- Android中使用语音引擎入门七步曲
- Android(安卓)layout之优化:使用include和merge 标签
- Android(安卓)layout 使用include和merge 标签
- 一看就懂的Android(安卓)APP开发入门教程
- (20120722)(笔记004)android开发应用程序资源
- Android(安卓)11适配指南之系统相机拍照、打开相册
- Android如何完全调试framework层代码
- Android(安卓)Zip文件解压缩代码
- Android(安卓)教程之实现动作感应技术