我的应用程序,我使用了很多getResources()
BitmapFactory.decodeResource(getResources(), resourceid, opts);
我可以使用Resources res = getResources()作为全局变量并使用
BitmapFactory.decodeResource(res, resourceid, opts);
所以,我的问题是:避免内存泄漏的更好方法是什么?
由于
答案 0 :(得分:1)
我偶尔这样做,我认为可以很好,但你只需要观看它。在您的情况下,我不确定在没有任何变化时创建Global
变量是值得的。我会根据context
或其他变量来获取某个资源的函数。但在这里,我不知道如何
BitmapFactory.decodeResource(getResources(), resourceid, opts);
比
更好BitmapFactory.decodeResource(res, resourceid, opts);
您似乎正在添加一个额外的不必要的步骤
答案 1 :(得分:1)
我不会尝试对此进行微观优化,只需使用有关创建更少垃圾的常见做法。通过这个,我的意思是避免解码某些东西,让它超出范围并再次解码。
真的,除非你继续解码巨大的图像或类似的东西,否则我没有看到任何问题。