如何以编程方式截取WHOLE活动页面的屏幕截图?

Gio*_*yan 9 java android screenshot

即使内容不可见,如何在Android上截取整个活动的屏幕截图?防爆.截取完整聊天的截图然后生成图像文件?

在此输入图像描述

我也想要截图隐形区域.

谢谢

the*_*ace 9

一种方法是提取当前屏幕的位图并保存.试试这个:

public void takeScreenshot(){
    Bitmap bitmap = getScreenBitmap(); // Get the bitmap
    saveTheBitmap(bitmap);               // Save it to the external storage device.
}

public Bitmap getScreenBitmap() {
   View v= findViewById(android.R.id.content).getRootView();
   v.setDrawingCacheEnabled(true); 
   v.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), 
            MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
   v.layout(0, 0, v.getMeasuredWidth(), v.getMeasuredHeight()); 

   v.buildDrawingCache(true);
   Bitmap b = Bitmap.createBitmap(v.getDrawingCache());
   v.setDrawingCacheEnabled(false); // clear drawing cache
   return b;
}
Run Code Online (Sandbox Code Playgroud)

Android以编程方式拍摄屏幕截图