본문 바로가기

비트맵

[Android] !!! FAILED BINDER TRANSACTION !!! 안드로이드에서 Material Design을 계속 밀어줌으로써,Activity 간의 이동을 할 때 Bitmap을 넘겨주고자 하는 일이 많아졌다. Intent에 Bitmap을 put 시킬 때, 안드로이드에서는 이미지 크기가 40KB 로 제한되어 있다.따라서 40KB 이상의 Bitmap을 넣을 경우!!! 아래와 같은 Log를 볼 수 있다. !!! FAILED BINDER TRANSACTION !!! 그럼.. 이미지의 크기를 낮춰야 할까??? 그럼 이미지가 깨지게 되는데.. 어떻하지??이벤트 마다 이미지를 다시 로딩 해야 하나??? 화면을 넘어가서 로딩 할까?? 그럼 화면에서 정상적인 동작이 이뤄지지 않을 수도 있다.(예를 들어 모션은 들어 갔는데 이미지는 아직 로딩이 안되는 상태에서 이미지를 구할려고 한다면.. 더보기
[ Android ] 비트맵에 이미지나 뭔가를 그릴 때 뜨는 에러! java.lang.IllegalStateException: Immutable bitmap passed to Canvas constructor Bitmap bitmap = BitmapFactory.decodeFile(..); Canvas canvas = new Canvas(bitmap); canvas.save(); canvas.drawbitmap(...); ... canvas.restore(); 위 와 같은 형식에 소스에서 디버깅을 하면 회색 네모상자의 에러가 나옵니다. BitmapFactory에서 불러온 이미지는 수정이 불가능 하다고 하네요. 크기나 뭐 옵션 같은 것은 줄 수 있겠지만요^^ 그래서 똑같은 비트맵을 복사함으로써 해결이 됩니다. Bitmap bitmap = BitmapFactory.decod.. 더보기