关于这个bug 网上也有很多博客提到 最常见的原因是context的问题 本该用Activity 的context 可能是用成了 ApplicationContext 因为弹窗是必须依附在Activity上面的。
我这里Context是没问题 但是由于我的Dialog是静态实例 在Activity退出的时候 我仅仅是调用了 dialog.dissMiss( ); 导致第二次打开应用就老是报这个错误。 原因是我在所有activity退出后 private static Dialog mDialog 等静态实例并未被销毁 我再次打开后即使我是在Activity初始化之后再创建这个Dialog 也还是会报这个错,所以我在Activity 销毁的时候 还要将Dialog的实例置空 这样就可以了。
public void dissDialog(){
dialog_main.dismiss();
dialog_main = null;
}