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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---