如果网页浏览太长并且将其存储在内部存储中,如何获取它的屏幕截图。因此,例如,如果我的webview显示“google.com”,我尝试下面的代码,它会截取屏幕截图并将其存储为.jpg。但如果我的webview显示“stackoverflow.com”,由于此网页太长,应用程序崩溃。一些帮助将不胜感激。
Picture picture=this.getCurrentWebView().capturePicture();
Bitmap b = Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
picture.draw(c);
FileOutputStream fos = null;
try {
fos = new FileOutputStream("mnt/sdcard/myjpg.jpg");
if ( fos != null ){
b.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.close();
}
}
catch( Exception e )
{
}
答案 0 :(得分:0)
不知道你是否想出来但这可能会有所帮助:
将android:largeHeap =“true”添加到您的Mainfest。
像...一样的东西。
<application
android:allowBackup="true"
android:label="@string/app_name"
android:icon="@drawable/ic_launcher"
android:theme="@style/AppThemeHolo"
android:largeHeap="true"
>
...
...
</application>