首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android -如何超级干净地终止应用程序

Android -如何超级干净地终止应用程序
EN

Stack Overflow用户
提问于 2015-10-30 21:14:00
回答 2查看 73关注 0票数 0

我有一个相当复杂的应用程序,它在很多情况下调用Handler上的postpostDelayed方法。到目前为止,一切都运行正常。

但是,我担心当Android决定暂停/终止活动时,我可能仍然有一些非常重要的任务等待执行。仅仅忽略它们就会影响数据的完整性。

我知道Activity类上的onPauseonDestroy调用,并且我已经将它们用于正常的清理。但是我不确定应该如何处理Handler对象中挂起的内容。

我是不是应该以某种方式从处理程序中获取所有挂起的函数,并通过在onPause/onDestroy内的循环中显式调用它们的run方法?或者Android有处理这种情况的标准方法吗?

在这个问题上,我非常需要一些指导。请帮帮忙。

-Androbean

EN

回答 2

Stack Overflow用户

发布于 2015-10-30 21:37:43

别无他法。LifeCycle方法(onPause/Stop/Destroy)是一个标准场景。在那里,您可以清除所有runnable对象的回调:

代码语言:javascript
复制
Runnable runnable = new Runnable() {
        @Override
        public void run() {
        }
    };
handler.postDelayed(runnable, 100);
handler.removeCallbacks(runnable);

因此,它永远不会调用(如果它仍在等待运行)。

票数 0
EN

Stack Overflow用户

发布于 2015-10-31 19:15:38

首先,你必须了解活动的生命周期是怎样的。http://developer.android.com/intl/es/training/basics/activity-lifecycle/starting.html

不要寻找魔术,只要假设系统给你什么,并选择一个合适的设计即可。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33436882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档