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 -~----------~----~----~----~------~----~------~--~---