Безопасно ли иметь статическую ссылку на private static Resources mRes;
в моем классе Utils, инициализированный следующим образом?Утечка памяти Android на статическую переменную-член ресурса?
public static void init(Resources res) {
mRes = res;
}
.. later in activity
Utils.init(getContext().getResources());
Мне кажется, это вызывает утечку памяти (срубы из Eclipse, Memory Analyzer ниже)
mOuterContext android.app.ContextImpl
'- mContext android.content.res.Resources
|- mRes class com.github.mikephil.charting.utils.Utils
|- mResources android.app.LoadedApk
|- mResources android.app.ContextImpl
|- this$0 android.content.res.Resources$Theme
| '- referent java.lang.ref.FinalizerReference
| '- next java.lang.ref.FinalizerReference
| '- next java.lang.ref.FinalizerReference
Есть ли безопасные способы получить ссылку на класс ресурсов, что не протекает вся деятельность?
В примере переменная-член контекста должна быть инициализирована как getApplicationContext() (вызвана в my onCreate()?) –
Действительно, было бы лучше – ToYonos