Утилизировать работу хорошо или нет? в onDestroy()
У меня есть вопрос об использовании моего растрового изображения в режиме просмотра изображений.
Я использую этот код для переработки изображения в режиме просмотра изображений.
drawable = imglist1.getDrawable();
if (drawable instanceof BitmapDrawable) {
BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
Bitmap bitmap = bitmapDrawable.getBitmap();
bitmap.recycle();
}
Я называю это методом onDestroy
@Override
protected void onDestroy() {
super.onDestroy();
...
}
Я имею в изображениях изображений (растровое изображение) при открытии новой деятельности (вызов onDestroy())
после открытия новой активности не видно изменений в памяти монитора Android.
Android-монитор
Как можно контролировать, хорошо ли работает утилизация, или как можно уменьшить память?
Память это от большей части растровых изображений в изображениях.
Спасибо за идеи
1 ответ
После пометки растрового изображения как пригодного для повторного использования, оно будет освобождено только при выполнении GC. Здесь у вас есть больше информации: Android: Bitmap recycle () как это работает?
Но твой вопрос довольно неясен. Если вы перерабатываете растровые изображения в onDestroy, это не имеет смысла, потому что в onDestroy все представления будут освобождены, а также ссылка на растровое изображение, поэтому он будет GCed в следующем выполнении.
Вероятно, лучшим вариантом для вас является повторная выборка изображений. Ссылка, которую я разместил, содержит больше информации.