ダイアログ生成でBadTokenException

AlertDialogを生成するところで、以下のようなエラーが出ることがあると思います。

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

こんな時、問題は大抵、AlertDialogの生成時の引数にあります。

AlertDialogを生成する時はインナークラスのBuilderをまず生成しますが、
この時のコンストラクタに設定するのが
Activity#getApplicationContextや
Activity#getBaseContextで取得したContextインスタンスになっていませんか?

Activity自体を渡してあげればエラーが解消されます。