Parenthtml
Application和Activity都继承自Context,具体来讲,Application继承自ContextWraper,Activity继承自ContextThemeWrapper(ContextThemeWrapper是ContextWraper的子类)。app
你们注意看到有一些NO上添加了一些数字,其实这些从能力上来讲是YES,可是为何说是NO呢?下面一个一个解释:ide
数字1:启动Activity在这些类中是能够的,可是须要建立一个新的task。通常状况不推荐。
数字2:在这些类中去layout inflate是合法的,可是会使用系统默认的主题样式,若是你自定义了某些样式可能不会被使用。
数字3:在receiver为null时容许,在4.2或以上的版本中,用于获取黏性广播的当前值。(能够无视)
注:ContentProvider、BroadcastReceiver之因此在上述表格中,是由于在其内部方法中都有一个context用于使用。
复制代码
何时用Application的Context,何时用Activity的Context Android Application中的Context和Activity中的Context的异同post