Hi All,

I am facing a problem. I launched a webview with some url. After url
is completely loaded I try to get its content in a Canvas. But I am
unable to do so. its crashing at libsgl.so

My goal is to get webview complete data in a bitmap. There is one api
getDrawingCache() which gets the webview data in a bitmap format, but
it gets only the visible content. I actually want the whole content in
a bitmap.

If there is some another way, then how can I go about that.

Here is mine code.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
WebView w = new WebView(this);
w.loadUrl("http://www.msn.com";);

int w1 = w.getWidth();
int h1 = w.getContentHeight();
Bitmap myBitMap = Bitmap.createBitmap(w1,h1, Bitmap.Config.ARGB_8888);
Canvas myCanvas = new Canvas();
w.draw(myCanvas);                                                  //
**********CRASH POINT **********//
savePicture(myBitMap, "yahoo2.jpg");




*********************************************************************************************
// Saving it as a file to locacal filesystem
*********************************************************************************************

 private void savePicture(Bitmap bitmap, String filename) {
        String fileName = filename;
        if(bitmap!= null) {
                //BitmapDrawable drawable = new BitmapDrawable(mBitmap);
                        
//getWindow().setFeatureDrawable(Window.FEATURE_LEFT_ICON,
(Drawable)drawable);
                ByteArrayOutputStream byteArrayOpStream = new
ByteArrayOutputStream();
                        bitmap.compress(Bitmap.CompressFormat.JPEG, 90, 
byteArrayOpStream);
                        try {
                                FileOutputStream fos = openFileOutput(fileName,
MODE_WORLD_WRITEABLE);
                                fos.write(byteArrayOpStream.toByteArray());
                                /*byte[] picByteArry = 
picture.toString().getBytes();
                                fos.write(picByteArry);*/
                        fos.close();
                        } catch (FileNotFoundException e) {
                                e.printStackTrace();
                        } catch (IOException e) {
                                e.printStackTrace();
                        }
                }
    }

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




I am also pasting the crash logs which are shown in ddms.


************************************************************************************************

09-10 19:36:25.955: INFO/DEBUG(539): *** *** *** *** *** *** *** ***
*** *** *** *** *** *** *** ***
09-10 19:36:25.955: INFO/DEBUG(539): Build fingerprint: 'generic/sdk/
generic/:1.5/CUPCAKE/150240:eng/test-keys'
09-10 19:36:25.962: INFO/DEBUG(539): pid: 1544, tid: 1544  >>>
com.android.CapturePicture <<<
09-10 19:36:25.962: INFO/DEBUG(539): signal 11 (SIGSEGV), fault addr
00000024
09-10 19:36:25.962: INFO/DEBUG(539):  r0 00313c68  r1 003a4e5c  r2
003be7a4  r3 00000000
09-10 19:36:25.962: INFO/DEBUG(539):  r4 00000000  r5 003a4a38  r6
ac12736c  r7 003be7a4
09-10 19:36:25.962: INFO/DEBUG(539):  r8 00313c68  r9 00000000  10
00000000  fp 00000000
09-10 19:36:25.972: INFO/DEBUG(539):  ip ac052c50  sp bebdd3b8  lr
ac052e68  pc ac052c6c  cpsr 60000010
09-10 19:36:26.092: INFO/DEBUG(539):          #00  pc 00052c6c  /
system/lib/libsgl.so
09-10 19:36:26.092: INFO/DEBUG(539):          #01  pc 00052e64  /
system/lib/libsgl.so
09-10 19:36:26.102: INFO/DEBUG(539):          #02  pc 00054f48  /
system/lib/libsgl.so
09-10 19:36:26.102: INFO/DEBUG(539):          #03  pc 00051d90  /
system/lib/libsgl.so
09-10 19:36:26.122: INFO/DEBUG(539):          #04  pc 0025e99a  /
system/lib/libwebcore.so
09-10 19:36:26.132: INFO/DEBUG(539):          #05  pc 0025ea0e  /
system/lib/libwebcore.so
09-10 19:36:26.132: INFO/DEBUG(539):          #06  pc 0000e3b4  /
system/lib/libdvm.so
09-10 19:36:26.142: INFO/DEBUG(539):          #07  pc 00040a8a  /
system/lib/libdvm.so
09-10 19:36:26.142: INFO/DEBUG(539):          #08  pc 00013118  /
system/lib/libdvm.so
09-10 19:36:26.151: INFO/DEBUG(539):          #09  pc 00017b1c  /
system/lib/libdvm.so
09-10 19:36:26.151: INFO/DEBUG(539):          #10  pc 00017560  /
system/lib/libdvm.so
09-10 19:36:26.151: INFO/DEBUG(539):          #11  pc 00052268  /
system/lib/libdvm.so
09-10 19:36:26.161: INFO/DEBUG(539):          #12  pc 000596ee  /
system/lib/libdvm.so
09-10 19:36:26.172: INFO/DEBUG(539):          #13  pc 00013118  /
system/lib/libdvm.so
09-10 19:36:26.172: INFO/DEBUG(539):          #14  pc 00017b1c  /
system/lib/libdvm.so
09-10 19:36:26.172: INFO/DEBUG(539):          #15  pc 00017560  /
system/lib/libdvm.so
09-10 19:36:26.182: INFO/DEBUG(539):          #16  pc 000520ec  /
system/lib/libdvm.so
09-10 19:36:26.182: INFO/DEBUG(539):          #17  pc 0003f0f8  /
system/lib/libdvm.so
09-10 19:36:26.191: INFO/DEBUG(539):          #18  pc 00031ac2  /
system/lib/libdvm.so
09-10 19:36:26.191: INFO/DEBUG(539):          #19  pc 00028280  /
system/lib/libandroid_runtime.so
09-10 19:36:26.201: INFO/DEBUG(539):          #20  pc 00028d7e  /
system/lib/libandroid_runtime.so
09-10 19:36:26.201: INFO/DEBUG(539):          #21  pc 00008bf2  /
system/bin/app_process
09-10 19:36:26.201: INFO/DEBUG(539):          #22  pc 0001fd22  /
system/lib/libc.so
09-10 19:36:26.211: INFO/DEBUG(539):          #23  pc 0000bcb2  /
system/lib/libc.so
09-10 19:36:26.244: INFO/DEBUG(539):          #24  pc b000157e  /
system/bin/linker
09-10 19:36:26.251: INFO/DEBUG(539): stack:
09-10 19:36:26.251: INFO/DEBUG(539):     bebdd378  00000000
09-10 19:36:26.251: INFO/DEBUG(539):     bebdd37c  00316da0  [heap]
09-10 19:36:26.251: INFO/DEBUG(539):     bebdd380  00000000
09-10 19:36:26.251: INFO/DEBUG(539):     bebdd384  41048200
09-10 19:36:26.263: INFO/DEBUG(539):     bebdd388  bebdd3c0  [stack]
09-10 19:36:26.263: INFO/DEBUG(539):     bebdd38c  ad017ac4  /system/
lib/libdvm.so
09-10 19:36:26.263: INFO/DEBUG(539):     bebdd390  4000b298
09-10 19:36:26.263: INFO/DEBUG(539):     bebdd394  ad05a66d  /system/
lib/libdvm.so
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd398  41049a8c
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd39c  000d5f98  [heap]
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd3a0  001c8888  [heap]
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd3a4  afe0e940  /system/
lib/libc.so
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd3a8  00002bb0
09-10 19:36:26.272: INFO/DEBUG(539):     bebdd3ac  afe0ecd4  /system/
lib/libc.so
09-10 19:36:26.282: INFO/DEBUG(539):     bebdd3b0  df002777
09-10 19:36:26.282: INFO/DEBUG(539):     bebdd3b4  e3a070ad
09-10 19:36:26.282: INFO/DEBUG(539): #00 bebdd3b8  000000da
09-10 19:36:26.282: INFO/DEBUG(539):     bebdd3bc  00000000
09-10 19:36:26.282: INFO/DEBUG(539):     bebdd3c0  00002071
09-10 19:36:26.292: INFO/DEBUG(539):     bebdd3c4  afe0af93  /system/
lib/libc.so
09-10 19:36:26.292: INFO/DEBUG(539):     bebdd3c8  00000300
09-10 19:36:26.292: INFO/DEBUG(539):     bebdd3cc  afe0e940  /system/
lib/libc.so
09-10 19:36:26.292: INFO/DEBUG(539):     bebdd3d0  003dbcb0  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3d4  afe0ecd4  /system/
lib/libc.so
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3d8  003dbcb0  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3dc  00313c68  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3e0  003a4a38  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3e4  ac12736c
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3e8  003be7a4  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3ec  003a4a38  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3f0  00000000
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3f4  003a4e5c  [heap]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3f8  00000000
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd3fc  ac052e68  /system/
lib/libsgl.so
09-10 19:36:26.302: INFO/DEBUG(539): #01 bebdd400  bebdd500  [stack]
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd404  00000000
09-10 19:36:26.302: INFO/DEBUG(539):     bebdd408  ace0d15c
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd40c  00000002
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd410  bebdd454  [stack]
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd414  ace091d8  /system/
lib/libcorecg.so
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd418  00000001
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd41c  ffffffff
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd420  003a4a38  [heap]
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd424  00000000
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd428  00000000
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd42c  00000000
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd430  bebdd494  [stack]
09-10 19:36:26.311: INFO/DEBUG(539):     bebdd434  ac054f4c  /system/
lib/libsgl.so
09-10 19:36:27.481: INFO/ActivityManager(564): Process
com.android.CapturePicture (pid 1544) has died.
09-10 19:36:27.481: INFO/WindowManager(564): WIN DEATH: Window
{43670ce8 com.android.CapturePicture/
com.android.CapturePicture.CapturePicture paused=false}
09-10 19:36:27.542: INFO/WindowManager(564): WIN DEATH: Window
{436917f8 Panel:com.android.CapturePicture/
com.android.CapturePicture.CapturePicture paused=false}



************************************************************************************************




Any help would be highly appreciated.

Thanks in advance,
AJ
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to