getApplicationContext 与Activity.this 之我见

getApplicationContext 取得的Context是和Application关联的,生命周期是从应用的创建到销毁.

Activity.this 扩展了Context,其生命周期是Activity 创建到销毁。

搞清楚了生命周期接下来就好理解了。

比如有一个全局的数据库操作类,用到了context, 这个时候就要用到getApplicationContext , 而不是用ACtivity, 这就保证了,数据库的操作与activity无关.

 

另外:Activity是跟Windows相关,而getApplicationContext是跟Windows无关的。所以新建对话框的时候要用到Activity.this,否则会出错。

posted on 2013-03-09 22:13  henry_xu  阅读(192)  评论(0编辑  收藏  举报