Android:Activity.this与getApplicationContext()

1.getApplicationContext() 取得的Context是和应用关联的,生命周期是从应用的创建到销毁.
2.Activity.this 扩展了Context,其生命周期是Activity 创建到销毁。

例子:
1.全局的数据库操作类
用到了context, 这个时候就要用到getApplicationContext() , 而不是用Activity, 这就保证了,数据库的操作与Activity无关.

2.新建对话框`

AlertDialog.Builder builder = new AlertDialog.Builder(this);` 

AlertDialog.Builder()要求传递的参数是一个context,这里的context指的是Activity.this,是这个语句所在的Activity的this,是这个Activity 的上下文。AlertDialog对象是依赖于一个View的,而View是和一个Activity对应的。在Activity销毁的时候AlertDialog也就销毁了。

你可能感兴趣的:(Android:Activity.this与getApplicationContext())