有什么区别:
getApplicationContext()
getBasecontext()
getApplication()
getParent()
你能用一个简单的例子详细说明吗?
getApplicationContext()
应用程序上下文与应用程序相关联,并且在整个生命周期中始终相同。
不应使用getBasecontext()
,只需使用Context
代替与活动相关的qazxswpoi,并在活动被销毁时销毁。
getApplicationContext()应用程序上下文与Applicaition关联,并且在整个生命周期中始终相同。
不应该使用getBasecontext(),只需使用Context而不是与活动相关联的Context,并且可以在销毁活动时销毁它。
getApplication()仅适用于Activity和Services。虽然在当前的Android Activity和Service实现中,getApplication()和getApplicationContext()返回相同的对象,但无法保证始终如此(例如,在特定的供应商实现中)。因此,如果您想要在Manifest中注册的Application类,则不应该调用getApplicationContext()并将其强制转换为您的应用程序,因为它可能不是应用程序实例(您显然在测试框架中遇到过)。
如果当前视图是子视图,则getParent()返回活动的对象。换句话说,在子视图中调用时返回托管子视图的活动对象。