2012-09-06 54 views
2

可能重复:
Use of Context to start another Activity上下文传递意图

我被 “startActivity(新意图(aContext,类))” 中的一类方法,它是通过继承开始活动活动类。

我的问题是:什么是Intent的构造函数的应用上下文或活动上下文的第一个参数?请解释 。使用这两种方法都会产生什么问题?

使用应用程序上下文和何时使用活动上下文?请用一个简单的例子来解释。

回答

1

是有记忆问题,请参阅开发者网站娄理解这个问题更好

如果使用活动情境是指发生了异常活动范围的垃圾收集器将无法收集这么该活动将泄漏内存

如果活动在完成后将被销毁,如果您将其从活动中引用出去,GC将无法收集它,因为应用程序上下文具有所有应用程序的范围,并且不会被需要销毁至应用程序退出

应用程序上下文 - T只要你的应用程序存在并且不依赖于活动的生命周期,他的上下文就会生活。如果您打算保留需要上下文的长寿命对象,请记住应用程序对象。您可以通过调用Context.getApplicationContext()或Activity.getApplication()轻松获得它。 阅读本http://android-developers.blogspot.in/2009/01/avoiding-memory-leaks.html

+0

我已经看过这份文件,请提供给我另一个例子中,我们必须使用应用程序上下文并在活动情境 – user1041858

+0

http://stackoverflow.com/questions/1026973/android-whats-the-difference-between -the-various-methods-to-get-a-context –

+0

因此,我们在这里使用应用上下文或活动上下文 – user1041858