为什么通过代码在Android中拍摄多个视图的截图时VideoView是黑色的?

为什么通过代码在Android中拍摄多个视图的截图时VideoView是黑色的?,android,views,android-videoview,Android,Views,Android Videoview,在我的Android应用程序中,我同时运行多个视图:ImageView、VideoView和WebView。然而,当我通过代码截图时,视频视图是黑色的,而在使用Android设备手动截图时,情况并非如此 为什么会这样 使用的代码: try { View view = getActivity().getWindow().getDecorView().getRootView(); view.setDrawingCacheEnabled(true);

在我的Android应用程序中,我同时运行多个视图:ImageView、VideoView和WebView。然而,当我通过代码截图时,视频视图是黑色的,而在使用Android设备手动截图时,情况并非如此

为什么会这样

使用的代码:

 try {
        View view = getActivity().getWindow().getDecorView().getRootView();
        view.setDrawingCacheEnabled(true);

        Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());
        view.setDrawingCacheEnabled(false);

        File imageFile = new File(mPath);

        FileOutputStream outputStream = new FileOutputStream(imageFile);
        int quality = 100;
        bitmap.compress(Bitmap.CompressFormat.JPEG, quality, outputStream);
        outputStream.flush();
        outputStream.close();
    } catch (Throwable e) {
        e.printStackTrace();
    }
截图结果:

尝试像这样使用TextureVideoView:

VideoView
不使用图形缓存。系统屏幕截图机制不使用您的代码制作屏幕截图。可能会重复