代码中出现如下错误:

android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

分析:

问题在于new AlertDialog.Builder(Context),虽然这里的参数是AlertDialog.Builder(Context context)

但我们不能使用getApplicationContext()获得的Context,而必须使用Activity的Context对象,因为只有一个Activity才能添加一个窗体。  

解决方法:

将new AlertDialog.Builder(Context context)中的参数用Activity的Context对象即可

弹出确认框

    new AlertDialog.Builder(MainActivity.this)
		.setTitle(R.string.confirm_title)
		.setMessage(R.string.confirm_content)
		.setPositiveButton(R.string.confirm_ok, new OnClickListener() {
			@Override
			public void onClick(DialogInterface dialogInterface, int arg1) {
				dialogInterface.dismiss();
				masterClear(getApplicationContext());
			}
		})
		.setNegativeButton(R.string.confirm_cancel, new OnClickListener() {
			@Override
			public void onClick(DialogInterface dialogInterface, int arg1) {
				dialogInterface.cancel();
			}
		}).show();