我正在尝试捕获屏幕上绘制的webview图像给android中的用户,我总是以黑色图像结束。这是正确的大小,一切都不是
以下是我正在使用的代码:
String theURL = "file:///android_asset/www/pages/page2.html";
WebView webview = new WebView(ctx);
webview.loadUrl(theURL);
Bitmap bm = Bitmap.createBitmap(1000, 1000, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bm);
webview.draw(c);
OutputStream stream = null;
try {
stream = new FileOutputStream(Environment.getExternalStorageDirectory() +"/page.jpg");
bm.compress(CompressFormat.JPEG, 80, stream);
if (stream != null) stream.close();
return new PluginResult(PluginResult.Status.OK);
} catch (IOException e) {
return new PluginResult(PluginResult.Status.ERROR, e.toString());
} finally {
bm.recycle();
}
谢谢,如果有人可以提供帮助。
答案 0 :(得分:0)
webview.loadUrl(theURL);
开始加载页面,这可能需要一段时间。在绘制webview之前等待,直到加载页面。您可以使用setWebViewClient(WebViewClient client)
设置对象,以便在页面加载完成后接收通知。