android截图为长网页

时间:2013-01-23 15:52:36

标签: android

如果网页浏览太长并且将其存储在内部存储中,如何获取它的屏幕截图。因此,例如,如果我的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 )
           {
           }

1 个答案:

答案 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>