Converting an immutable bitmap to be mutable in Android
By: Kevin | June 11, 2014
I ran into this error while I was working with a custom view that allowed users to draw on a image using their finger.
java.lang.IllegalStateException: Immutable bitmap passed to Canvas constructor
I found the quick fix is to just make a copy of the original bitmap and pass a true boolean which is the flag to make the copy mutable.
Bitmap immutableBitmap = coming from where ever your source is.... Bitmap mutableBitmap = immutableBitmap.copy(Bitmap.Config.ARGB_8888, true);//<--true makes copy mutable Canvas canvas = new Canvas(mutableBitmap);