E/MicroMsg.SDK.WXMediaMessage(17582): checkArgs fail, thumbData is invalid
生活随笔
收集整理的這篇文章主要介紹了
E/MicroMsg.SDK.WXMediaMessage(17582): checkArgs fail, thumbData is invalid
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
微信官網(wǎng)給的Demo中。圖片的分享例子他是這么描述的:
String?url?=?"http://pic2.nipic.com/20090506/1478953_125254084_2.jpg";??????????????????????????????????
?????????????????????????????try{?
????????????????????????????????WXImageObject?imgObj?=??new?WXImageObject();?
????????????????????????????????imgObj.imageUrl?=?url;?
?????????????????????????????????
????????????????????????????????WXMediaMessage?msg?=??new?WXMediaMessage();?
????????????????????????????????msg.mediaObject?=?imgObj;?
????????????????????????????????Bitmap?bmp?=?BitmapFactory.decodeStream(?new?URL(url).openStream());?
????????????????????????????????Bitmap?thumbBmp?=?Bitmap.createScaledBitmap(bmp,?THUMB_SIZE,?THUMB_SIZE,?true);?
????????????????????????????????bmp.recycle();?
????????????????????????????????msg.thumbData?=?Util.bmpToByteArray(thumbBmp,??true);?
?????????????????????????????????
????????????????????????????????SendMessageToWX.Req?req?=??new?SendMessageToWX.Req();?
????????????????????????????????req.transaction?=?buildTransaction("img");?
????????????????????????????????req.message?=?msg;?
????????????????????????????????req.scene?=?isTimelineCb.isChecked()???SendMessageToWX.Req.WXSceneTimeline?:?SendMessageToWX.Req.WXSceneSession;
????????????????????????????????api.sendReq(req);?
?????????????????????????????????
?????????????????????????????????//?finish();?
????????????????????????????}??catch(Exception?e)?{?
????????????????????????????????e.printStackTrace();?
????????????????????????????????Toast.makeText(SendToWXActivity.this,?"Error?msg"+e.toString(),?1000).show();?
????????????????????????????}?
?????????????????????
?????????????????????????????break;?
? ? ? ? ? ? ? ? ? ? ? ??
?
?而在實際的使用過程中,總是報這樣的一個錯誤,怎么也調(diào)用不到微信的分享界面。
?
05-06 10:21:35.276: E/MicroMsg.SDK.WXMediaMessage(19273): checkArgs fail, thumbData is invalid?好像是圖片處理那邊出現(xiàn)了問題。細(xì)看這個代碼。里面有一個將bitmap對象轉(zhuǎn)化成byte數(shù)據(jù)字節(jié)的對象。原先的代碼是這樣的如下所示:
?
?????public?static?byte[]?bmpToByteArray(final?Bitmap?bmp,?final?boolean?needRecycle)?{
ByteArrayOutputStream?output?=??new?ByteArrayOutputStream();?????????bmp.compress(CompressFormat.PNG,?100,?output);?
?????????if?(needRecycle)?{?
????????????bmp.recycle();?
????????}?
?????????
?????????byte[]?result?=?output.toByteArray();?
?????????try?{?
????????????output.close();?
????????}??catch?(Exception?e)?{?
????????????e.printStackTrace();?
????????}?
?????????
?????????return?result;?
????}
?現(xiàn)將其改成如下所示的:
?????public?static?byte[]?bmpToByteArray(final?Bitmap?bmp,?final?boolean?needRecycle)?{
int?i;??????????int?j;?
?????????if?(bmp.getHeight()?>?bmp.getWidth())?{?
????????????i?=?bmp.getWidth();?
????????????j?=?bmp.getWidth();?
????????}??else?{?
????????????i?=?bmp.getHeight();?
????????????j?=?bmp.getHeight();?
????????}?
?????????
????????Bitmap?localBitmap?=?Bitmap.createBitmap(i,?j,?Bitmap.Config.RGB_565);?
????????Canvas?localCanvas?=??new?Canvas(localBitmap);?
?????????
?????????while?(?true)?{?
????????????localCanvas.drawBitmap(bmp,??new?Rect(0,?0,?i,?j),??new?Rect(0,?0,i,?j),??null);?
?????????????if?(needRecycle)?
????????????????bmp.recycle();?
????????????ByteArrayOutputStream?localByteArrayOutputStream?=??new?ByteArrayOutputStream();?
????????????localBitmap.compress(Bitmap.CompressFormat.JPEG,?100,?
????????????????????localByteArrayOutputStream);?
????????????localBitmap.recycle();?
?????????????byte[]?arrayOfByte?=?localByteArrayOutputStream.toByteArray();?
?????????????try?{?
????????????????localByteArrayOutputStream.close();?
?????????????????return?arrayOfByte;?
????????????}??catch?(Exception?e)?{?
?????????????????//?F.out(e);?
????????????}?
????????????i?=?bmp.getHeight();?
????????????j?=?bmp.getHeight();?
????????}?
????}
?
現(xiàn)在就可以對圖片進(jìn)行分享了。 有更好的解決辦法,希望可以留言 !!!
總結(jié)
以上是生活随笔為你收集整理的E/MicroMsg.SDK.WXMediaMessage(17582): checkArgs fail, thumbData is invalid的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言手串题目,最全最简单的各种手链编织
- 下一篇: java p2p实例_java文件p2p