webview再次保存相同的屏幕截图android

时间:2017-07-27 06:04:45

标签: android webview screenshot

以下代码捕获webview图像并将其保存在Pictures文件夹中。代码如下

public static void getBitmapOfWebView(final WebView webView){
    Date now = new Date();
    String mPath = Environment.getExternalStorageDirectory() + File.separator + Environment.DIRECTORY_PICTURES + File.separator + "Screenshot_" + now + ".jpg";

    webView.setDrawingCacheEnabled(true);
    webView.buildDrawingCache(true);
    Picture picture = webView.capturePicture();
    Bitmap  b = Bitmap.createBitmap( webView.getWidth(), webView.getHeight(), Bitmap.Config.ARGB_8888);
    Canvas c = new Canvas(b);

    picture.draw(c);
    FileOutputStream fos = null;
    try {

        fos = new FileOutputStream(mPath);
        if ( fos != null ) {
            b.compress(Bitmap.CompressFormat.JPEG, 100, fos);
            fos.close();
        }
    }
    catch(Exception e) {}

    b.recycle();
}

以上代码可以将截图保存在图片文件夹中。但问题是当我向下滚动WebView并尝试再次执行相同的代码时,它会将webview的旧屏幕截图保存在图片文件夹中。

我如何以这样的方式编码:当我滚动Webview时,它应该保存webview的当前屏幕截图。

任何帮助感谢。

谢谢。

0 个答案:

没有答案