android - 是否应该避免将应用程序上下文传递给应用程序中的这么多类?
问题描述
我知道将活动上下文作为参数发送给类是一种不好的做法,
但是我有一个应用程序,其中有这么多应用程序上下文被传递给这么多类,我很担心,想知道这是否是一种不好的做法?
顺便说一句,我没有在提到的类中使用静态变量来存储传递应用程序上下文,而是为了使类的所有部分的上下文都是全局的,我通常定义一个全局上下文
上下文 mGlobalContext
然后使用
this.mGlobalContext = c
其中 c 是传递的上下文的参数
解决方案
阅读Romain Guy的这篇博客,总结他说保持活动上下文会导致内存泄漏,但是如果类之间共享的上下文是应用程序上下文,那么可以避免内存泄漏。因此,发送不会导致您按照Romain Guy的说法发生内存泄漏。:Dapplication context
在我的观点和我的实践中,我只在需要时传递上下文,并且在将上下文发送到不同的活动之前需要牢记上下文范围(活动/应用程序的生命周期)。
推荐阅读
- python - address_get 的目的是什么?
- linux - 我正在尝试使用 awk 提取文件中每一行的一部分
- python - 类型错误:on_ready() 缺少 1 个必需的位置参数:'self' discord.py
- c++ - set.upper_bound() 和 upper_bound(set.begin(), set.end()) stl 的区别
- nutch - 我对 db_redir_temp 有一些疑问
- julia - 检查夏令时 (DST) 是否对 Julia 有效
- nestjs - 通过公共关系获取实体
- html - div内的CSS文本框对齐以及图像
- angular - 执行服务中的方法时如何触发组件中的方法?
- reactjs - 当 2 个输入已满且在本机反应中有效时显示按钮