onWindowFocusChanged 调用时机

本文探讨了Android应用程序中onWindowFocusChanged回调的触发条件,分析了它与onResume和onStop方法的关系,并通过示例代码和日志输出展示了具体应用场景。
摘要由CSDN通过智能技术生成
切记:此函数只有在focus为true的时候回调一下app的方法,false的时候不会回调。所以不要通过true/false来做区别处理。

一、问题:

最近看到google原声的app中在onWindowFoucusChanged的回调中做资源回收:
代码中在hasWindowFocus的时候要回收listener。结果,显而易见,出现内存泄漏了。
google为什么会犯这么低级的错误?
觉得,可能时app的写的代码,没有及时更新?fw的逻辑变了,app还没有修改,然后google的测试没做压力测试?
好吧,只能这么解释了。
149    @Override
150    public void onWindowFocusChanged(boolean hasWindowFocus) {
151        long startTime = System.currentTimeMillis();
152        if (hasWindowFocus) {
153            Log.d(TAG, "Listening for condition changes");
154            mConditionManager.addListener(this);
155            Log.d(TAG, "conditions refreshed");
156            mConditionManager.refreshAll();
157        } else {
158            Log.d(TAG, "Stopped list
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值