마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

decode 해온 값을 setImagebitmap으로 보여주고 싶은데 오류가 뜹니다.

0 추천

제가 byte의 bitmap 데이터를 인코딩해서 String으로 변환한뒤 NFC로 String 값으로 넘겨받으며 그 값을 다시 byte로 decode해와서 이 값을 setImageBitmap으로 보여주고 싶은데요.

일단 받는곳의 코딩입니다. 받아온 data값과 decode 된 값을 보려고 중간중간 Log.d로 확인할수 있게 했습니다.

ncimage = (new String(payload, langCodeLen + 1, payload.length - langCodeLen - 1, textEncoding));
Log.d("receive", "ncimage : " + ncimage);
byte[] var_decode = getBase64decode(ncimage);
Log.d("receive", "ncimage : " + var_decode);
								getncView.setImageBitmap(BitmapFactory.decodeByteArray(var_decode, 0, var_decode.length));

이게 오류 로그입니다.

09-17 16:20:41.247    5349-5349/org.androidtown.lbs.map D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN
09-17 16:21:15.432    5349-5349/org.androidtown.lbs.map D/receive﹕ ncimage : W0JAYzc3ZTVhNw==
09-17 16:21:15.432    5349-5349/org.androidtown.lbs.map D/receive﹕ ncimage : [B@1585c01d
09-17 16:21:15.432    5349-5349/org.androidtown.lbs.map E/﹕ ReadStreamToBuffer : Qmage stream read error!! required length = 12 bytes, but just read 10 bytes
09-17 16:21:15.432    5349-5349/org.androidtown.lbs.map E/﹕ isQmage : input SkStreamRewindable length is less than Qmage minimum size : 0
09-17 16:21:15.432    5349-5349/org.androidtown.lbs.map D/skia﹕ --- SkImageDecoder::Factory returned null

보내고 받고, decode 된 값까지 잘 되었다고 생각했는데 ... 

byte 값이 부족하다는 에러가 뜨는것 같습니다... 앱개발 초보라서 어렵네요..ㅠㅠ

도와주시면 감사하겠습니다.ㅠㅠ

sean111 (1,220 포인트) 님이 2015년 9월 17일 질문

1개의 답변

0 추천
 
채택된 답변
ncimage에 들어있는 값이 W0JAYzc3ZTVhNw== 밖에 없군요. String에 들어있는것이 제대로된 이미지의 Bitmap데이터라 보기는 너무 작습니다. 일단 보내는 데이터가 정확히 받는쪽에 들어왔는지 부터 확인해보시죠.
회색 (21,340 포인트) 님이 2015년 9월 17일 답변
sean111님이 2015년 9월 18일 채택됨
encoding하면서 W0JAYzc3ZTVhNw== 이란 값을 가져왔고, decoding하면서 [B@1585c01d 로 바뀐것 아닌가요?
다른 페이지에서 byte값으로 [B@1585c01d 이런 형식으로 있으면 이미지를 보여줄수 있는 것으로 알고 있습니다.
아닌가요... ? 초보라서 어렵네요..
해결됐습니다 감사합니다.
어떻게 해결 하셨나요???
...