1
WebView 컨텐츠를 캡처하기 위해 비트 맵을 생성했습니다. 콘텐츠의 크기가 작은 경우에는 문제가 없습니다. 그러나 내용의 크기가 클 경우 비트 맵을 만들 때 메모리 부족 오류가 발생합니다.안드로이드 스크린 샷을위한 비트 맵 생성시 메모리 부족 오류
여기 내 코드입니다.
float scale = webView.getScale();
int webViewHeight = (int)(webView.getContentHeight() * scale);
//************************************************************
// An error occurs here.
Bitmap image = Bitmap.createBitmap(webView.getWidth(), webViewHeight, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(image);
webView.draw(canvas);
try {
FileOutputStream out = new FileOutputStream(filePath);
image.compress(Bitmap.CompressFormat.JPEG, 100, out);
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
대용량 콘텐츠의 Webview를 캡처하려면 어떤 방법을 사용해야합니까?
도움 주셔서 감사합니다.
답장을 보내 주셔서 감사합니다. 콘텐츠 크기가 매우 클 수 있습니다. 그래서이 방법을 사용하더라도 메모리가 부족합니다. 비트 맵을 메모리에 할당하지 않고 디스크에 할당 할 수 있습니까? – LuckyLeeis