文章来自:
http://dongya1987.iteye.com/blog/1577257
需求定义了一个动画效果,需要把当前的屏幕截下来。
最后发现了隐藏着的截屏API: android.view.Surface中的
- public static native Bitmap screenshot(int width, int height)
public static native Bitmap screenshot(int width, int height)
再考虑到横竖屏的因素,更详细的用法,参考frameworks\base\packages\SystemUI下的GlobalScreenshot.java中的takeScreenshot函数。
在发现这个函数之前,费了很多周折,其中有在Activity中添加截自己屏幕的代码,然后广播出去。这种方法获得的截图没有状态栏部分,并且Bitmap经过广播传的时候,发现太大。广播发送失败。后来发现用aidl通过进程间通信的方法来传递不会有此问题。