java.lang.IllegalStateException: Immutable bitmap passed to Canvas constructor
at android.graphics.Canvas.<init>(Canvas.java:127)
at app.test.canvas.StartActivity.applyFrame(StartActivity.java:214)
at app.test.canvas.StartActivity$1.onClick(StartActivity.java:163)
at android.view.View.performClick(View.java:4223)
at android.view.View$PerformClick.run(View.java:17275)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4898)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
at dalvik.system.NativeStart.main(Native Method)
मैं डेवलपर कंसोल से इस क्रैश त्रुटि .. मुझे समझ नहीं आता समस्या है क्या ..अपरिवर्तनीय बिटमैप दुर्घटना त्रुटि
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inScaled = true;
opt.inPurgeable = true;
opt.inInputShareable = true;
Bitmap brightBitmap = BitmapFactory.decodeResource(getResources(), position, opt);
brightBitmap = Bitmap.createScaledBitmap(brightBitmap, 550, 550, false);
chosenFrame = brightBitmap;
Bitmap workingBitmap = Bitmap.createBitmap(chosenFrame);
workingBitmap = Bitmap.createBitmap(workingBitmap);
Canvas c = new Canvas(workingBitmap);
मुझे लगता है कि इस से संबंधित है मिलता है?
यह विधि स्मृति को बचाने में मदद करती है। जब मैं विधि का उपयोग करता हूं तो मैंने म्यूटेबल बिटमैप – dimetil
करने के लिए सबसे आसान तरीका के साथ उत्तर संपादित किया, फिर ऐप क्रैश हो जाता है और लॉगकैट में यह कहता है कि कैनवास रीसाइक्लिंग बिटमैप का उपयोग नहीं कर सकता है –
एनवीएम मेरी टिप्पणी एटीएम, बीमार अपनी विधि का प्रयास करें फिर बीमार पुनः- पद। धन्यवाद –