我通过Activity类继承的类中的“startActivity(new Intent(aContext,class))”方法启动活动。
我的问题是:Intent的构造函数的第一个参数是Application Context还是Activity Context?请解释 。使用其中任何一个是什么内存问题?
何时使用应用程序上下文和活动上下文?请用一个简单的例子来解释。
答案 0 :(得分:1)
是的,有内存问题请参考下面的开发者网站来更好地了解问题
如果您使用活动上下文来引用活动范围之外的东西,垃圾收集器将无法收集它,因此活动将泄漏内存
因为活动将在完成之后被销毁,如果你将其引用出活动GC将无法收集它,因为应用程序上下文具有所有应用程序的范围,并且不需要销毁直到app退出
应用程序上下文 - 只要您的应用程序处于活动状态且不依赖于活动生命周期,此上下文就会存在。如果您计划保留需要上下文的长期对象,请记住应用程序对象。您可以通过调用Context.getApplicationContext()或Activity.getApplication()轻松获取它。 阅读此http://android-developers.blogspot.in/2009/01/avoiding-memory-leaks.html