android:为什么在finish()之后不调用onDestroy()

时间:2014-06-18 08:12:15

标签: android android-activity

我的示例中有两个活动,MainActiviy和EmptyActivity。在MainActiviy中,它创建一个通知,其目标是EmptyActivity。好吧,EmptyActivity非常简单,只需在onCreate中完成。

我在MainActiviy的onDestroy和onBackPressed中添加了跟踪 我在中调用了onBackPress中的finish()方法

问题是:

  1. 打开应用程序,然后按返回键,日志将打印在logcat中,表示调用了MainActiviy的onDestroyed。

  2. 如果打开应用程序,然后按状态栏中的通知,然后按返回键,则不会打印onDestroy中的日志

  3. 奇怪的是,如果重新打开应用程序,则会打印onDestroy中的日志..

  4. 有谁知道为什么会这样。感谢

    我将示例上传到了google驱动器

    Test

1 个答案:

答案 0 :(得分:2)

为什么减去我的问题!!! link与我的不同!!

onDestroy()仅在系统资源不足(内存,CPU时间等)时调用,并决定终止您的活动/应用程序,或者当某人对您的活动调用finish()时 即可。

我调用了finish()方法!!我的问题是"为什么onDestroy()在完成()&#34之后没有被调用;