저는 캔버스에 그림을 그리고 단순히 캔버스를 JPEG에 저장하려고합니다. 나는 일부 장치에서이 테스트를하고 ICS에서 작동하지 않는 것을 발견하고 나에게 나는 다음과 같은 코드를 시도 UnsupportedOperationException가 오류 제공 한 : setBitmap이 ICS에서 작동하지 않는 이유는 무엇입니까?
Bitmap bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
canvas.setBitmap(bitmap);
// Drawing to canvas here
OutputStream stream = new FileOutputStream("/sdcard/test.jpg");
bitmap.compress(CompressFormat.JPEG, 100, stream);
stream.close();
이
모든 onDraw는 방법으로 수행되고 오류입니다 canvas.setBitmap (비트 맵).Droid X (2.3) 및 Tab 10.1 (3.1)에서는 정상적으로 작동하지만 ICS를 실행하면 Galaxy Nexus (4.0) 및 Tab 10.1에서는 실패합니다. 나는 정말로 단순한 무언가를 보는 것을 끝내고 있습니다. 나는이 밤을 위해 노력해 왔으며 진전이 없다. 어떤 아이디어라도 대단히 감사하겠습니다!
업데이트 : "강제로 GPU 렌더링"을 해제했는데 작동하는 것처럼 보입니다. 이렇게하는 더 좋은 방법이 있어야합니다.
글쎄, 내 설정에서 엄격 모드가 사용 중지되었습니다. AsyncTask에서이 작업을 시도했지만 비트 맵에 저장하기 위해 캔버스를 다시 그려야하므로 추측하고 있습니다. 누출 된 창 오류가 발생합니다. – Mark