用Activity的时候,会发现如下问题:

  有时候会发现Activity的onDestroy方法回调不执行,或者延时执行,比较缓慢(可以达到好几秒钟之后才调用),即使之前使用finish方式关闭Activity也一样

onDestroy回调慢带来什么问题呢?

  有可能再次打开Activity的时候,都走完了onCreate,onResume之后上一次的onDestroy方法才被调用,想想如果在onResume和

onDestroy中共同维护了一个变量(isActivityShowing --> Activity是否正在显示),这个时候这个状态就错了。

解决方法与建议

  所以建议不要在Activity的onDestroy方法中做有关于数据存储,状态维护的事情,回收资源也最好不要完全依赖这个方法,可以用下面的方式

建议用以下方式绕过这个坑。

    //定义一个标志表示资源是否释放private boolean mIsDestroyed = false;private void doDestroy()  {if (mIsDestroyed ) {return;}// 释放静态资源OkHttpUtils.getInstance().cancelTag("getinfo");//mIsDestroyed = true;}@Overrideprotected void onPause() {super.onPause();if (isFinishing()) {doDestroy();}}@Overridepublic void onDestroy() {super.onDestroy();doDestroy();}

Android Activity onDestroy() 不回调的解决方式相关推荐

  1. Activity onDestroy延迟回调

    前端时间工作的时候遇到了两个奇怪的问题: 使用百度步行导航的时候,开启导航后立即退出,再次进入的时候就会黑屏: 使用度小满支付的时候,当支付成功后页面一直显示loading,过了10s左右才恢复正常. ...

  2. Android加载图片OOM错误解决方式

    前几天做项目的时候,甲方要求是PAD (SAMSUNG P600 10.1寸 2560*1600)的PAD上显示高分辨率的大图片. SQLITE採用BOLD方式存储图片,这个存取过程就不说了哈,网上一 ...

  3. 安装android studio报错,及解决方式

    在Android Studio的使用过程中,发现没有办法创建或运行虚拟机.在此记录一波三折的解决过程. 1.Error: Your CPU does not support required feat ...

  4. Android vivo手机安装失败的解决方式

    想看更多算法题,可以扫描上方二维码关注我微信公众号"数据结构和算法",截止到目前我已经在公众号中更新了500多道算法题,其中部分已经整理成了pdf文档,截止到目前总共有800多页( ...

  5. solrcloud mysql_solrcloud使用中遇到的问题及解决方式

    首先声明,我们团队在使用solrcloud过程中踩了一些坑,同事(晓磊和首富)进行了总结,我列到我的博客上做记录用: Q:为什么Solr里面的时间比数据库里面早8小时? Solr默认采用的时区是UTC ...

  6. Android爬坑之旅:软键盘挡住输入框问题的终极解决方式

    本文由BarryZhang原创,同一时候首发于diycode.cc.barryzhang.com .github.com/barryhappy.非商业转载请注明作者和原文链接. 前言 开发做得久了.总 ...

  7. Android:销毁所有的Activity退出应用程序几种方式

    Android:销毁所有的Activity退出应用程序几种方式 author:DRC工作室 我们都知道,Activity是存放在栈中.在默认的情况下(standard)Activity在栈中是以先进后 ...

  8. android获取activity截图,Android Activity 不能被截屏的解决方法

    Android Activity 不能被截屏的解决方法 在Activity 添加即可 getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECU ...

  9. Android Studio经验积累之常见问题以及解决方式

    原文出处--Android Studio经验积累 1.获取SHA1: Android Studio中获取sha1证书指纹数据的方法 2.注释模板:android studio中如何设置注释模板 3.A ...

最新文章

  1. 如果你去小公司带技术团队,可能需要做的事情
  2. USNews 2020美国大学排名公布:UCLA超越伯克利;计算机专业MIT第一,斯坦福跌出前四...
  3. 拒绝从入门到放弃_《Openstack 设计与实现》必读目录
  4. 掌握这几种平面设计思维类型,让你设计水平上新台阶
  5. 移动端去除横向滚动条
  6. python3 有序字典
  7. 【方案分享】2020娜扎X薇娅SKG娜小古直播方案.pdf(附下载链接)
  8. livedata mvvm_Android MVVM LiveData数据绑定
  9. Centos 6.8 配置mysql数据库主从同步
  10. Phoenix Tips (13) 统计收集
  11. Asp.net MVC4 下二级联动
  12. Atitit 模板引擎总结 v4 saa 目录 1. 模板引擎 1 1.1. 构成渲染引擎+指令系统 1 1.2. 模板语法mustache语法 es6 el语法 1 2. 常见模板步骤 1 2.
  13. QT 快捷键 识别小写字母
  14. windows域用户切换本地用户
  15. EMC电磁兼容---EMI电磁干扰
  16. 使用Power Automate (MS Flow) 发送审批邮件
  17. windows影音制作工具安装教程
  18. nofollow是什么意思,nofollow标签的作用是什么?
  19. 分手后怎样才能让前任重回你身边
  20. find与grep组合命令

热门文章

  1. 用PaddlePaddle鉴定红酒质量
  2. 抖音小店另类起店方法
  3. Rosalind Java|Longest Increasing Subsequence动态规划算法
  4. python去掉字典重复项_从字典列表中删除重复项python
  5. iOS App 名字国际化的办法
  6. 论文阅读笔记(1):Multi-Task Feature Learning for Knowledge Graph Enhanced Recommendation
  7. mysql查询薪酬最高_SQL查询找到第N个最高薪水
  8. 台积电业绩惊人,但全球芯片行业衰退影响加剧,将加码中国市场
  9. Visual Studio2022编译报错解决方法
  10. 【工具分享篇二】PDF公式提取教程(一):Mathpix/Typora及Pandoc扩展安装教程