将上下文传递给单例类的最佳方法是什么

时间:2018-04-29 15:34:23

标签: android performance android-fragments singleton

我创建了一个执行某些数据库操作的单例类,每个活动都会调用这个类,我需要将上下文传递给它。

这是每项活动的作用。

AnalyticsWrapper analyticsWrapper= AnalyticsWrapper.getInstance();
analyticsWrapper.reportView(MainActivity.this)

现在,当我将活动引用传递给单例类时,我对可能出现的问题感到困惑。

我几乎没有问题。

  • context传递给长时间运行的任务的好方法是什么。
  • 如果我通过getApplicaitonContex()代替,那会更好吗? MainActivity.this这里。
  • 当每个活动将其上下文传递给单例类时,它是否会增加内存,并且可能导致内存泄漏。

1 个答案:

答案 0 :(得分:1)

我认为使用DB Singleton的应用程序上下文没有任何问题,它可能会比Activity活得更久,因此传递Activity Context会泄漏。我已经将App Context传递给数据库实例很长一段时间了,它从来没有引起任何增加内存或功能的问题。