android解决dialog和popupwindow的BadTokenException:Unable to add window

本文介绍了在Android中遇到Dialog和PopupWindow显示时抛出BadTokenException的问题,分析了异常产生的原因:活动(Activity)在Dialog或PopupWindow显示前已被销毁。提出了解决方案:在Activity销毁时关闭所有线程,但这种方法可能导致应用闪退和后台线程重启问题,不推荐使用。建议寻找更优的处理方式来避免此类异常。
摘要由CSDN通过智能技术生成

        案例:今天修改公司一个项目BUG,有个效果是进APP首页,APP弹出弹窗广告,广告内容是实时从服务器获取的,(一般APP不推荐这么做,很多都是每次次进入获取下次要显示的广告),因为是实时获取,可能在这过程中网络不好,用户误点到某个模块进行跳转,那么已经开始show的dialog或者popupwindow就会出现BadTokenException.

        异常信息:android.view.WindowManager&BadTokenException:Unable to add window这个错误,说reference on a null performance

       

        正确异常出现原因:

        1.由于dialog和popupwindow都要依附于activity,所以dialog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值