要在onDestroy回调上关闭或删除的对象/组件

时间:2013-10-02 06:20:13

标签: android android-lifecycle

我仍然不清楚这一点,我没有找到真正清楚的解释:onDestroy回调中应该关闭/删除的对象/组件是什么?

根据我的阅读,至少会有:

  • 要删除的听众
  • 要关闭的数据库处理程序

但还有其他事情要处理吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

没有理由明确关闭某些东西只是因为它是数据库处理程序或侦听器。

你会想要杀死你不再需要的东西,但是在发生onDelete(或onStop)之后可能会错误地调用它。

那些可以是:服务,因为它们可能不会被操作系统杀死,因此在没有人需要时运行。广播接收器,因为它们可以从系统获取消息,并在您的活动已经无效时尝试处理它。处理程序,因为他们可以从您的应用程序的其他部分接收消息。监听器和数据库连接,因为应用程序的其他部分可能会无意中使用它们,而提供它们的活动已处于无效状态。 因此,在onStop / onDestroy上关闭什么是逻辑问题,而不是分类问题。

答案 1 :(得分:0)

你输入的正是什么。当发生回调方法时,您将需要关闭任何数据库连接和您正在收听的任何内容,例如SMS消息。

您还可以在该事件期间删​​除临时文件。或许你也想发一封电子邮件。它真的是你想要的,但开发人员真的建议你关闭数据库xnet和服务xnet。

懒惰的开发人员只是将此方法留空。