मेरे पास ए और बी गतिविधियां हैं। जब मैं गतिविधि ए से गतिविधि बी शुरू करता हूं, तो मैंने गतिविधि बी पर स्थिर बिटमैप वैरिएबल सेट किया है। मैं स्क्रीन पर बिटमैप दिखाता हूं और इसे घुमाता हूं।मेमोरी उपयोग में कमी नहीं होती है, फिर भी मैं रीटसायकल बिटमैप्स
जब गतिविधि बी समाप्त हो जाती है, तो मैं ऑनस्ट्रोय() विधि पर सभी बिटमैप्स रीसायकल करता हूं लेकिन स्मृति उपयोग कम नहीं हो रहा है।
@Override
protected void onDestroy() {
super.onDestroy();
if (bitmap90 != null) {
bitmap90.recycle();
bitmap90 = null;
}
if (bitmap180 != null) {
bitmap180.recycle();
bitmap180 = null;
}
if (bitmap270 != null) {
bitmap270.recycle();
bitmap270 = null;
}
if (mBitmap != null) {
mBitmap.recycle();
mBitmap = null;
}
if (((BitmapDrawable) ivOriginal.getDrawable()).getBitmap() != null) {
((BitmapDrawable) ivOriginal.getDrawable()).getBitmap().recycle();
ivOriginal.setImageDrawable(null);
}
if (((BitmapDrawable) ivOriginal90.getDrawable()).getBitmap() != null) {
((BitmapDrawable) ivOriginal90.getDrawable()).getBitmap().recycle();
ivOriginal90.setImageDrawable(null);
}
System.gc();
}
शायद आप कहीं और अपने बिटमैप्स का संदर्भ धारण कर रहे हैं। आम तौर पर स्थैतिक गुणों का उपयोग निराश होता है। आप अपनी बिटमैप्स को फ़ाइल में क्यों नहीं सहेजते हैं और फिर इसे अपनी बी गतिविधि में पढ़ते हैं? –