ダイアログ生成で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自体を渡してあげればエラーが解消されます。