如何知道活动因方向变化而被破坏的时间?

时间:2017-11-28 15:04:34

标签: android android-activity rotation orientation

我正在创建一个Activity,当活动因方向更改而被销毁时会记录消息。 我想要做的是在活动被销毁的那一刻调用<a> UP。 换句话说,我希望在重新创建活动后通过检查Log.d()来调用它。

在我到达savedInstanceState==null之前,有没有办法知道活动被破坏的原因?感谢

2 个答案:

答案 0 :(得分:1)

您可以使用文档中的isChangingConfigurations()

  

检查此活动是否正在被销毁,以便使用新配置重新创建。

可用文档here

答案 1 :(得分:-1)

如果我理解正确,您希望在销毁活动之前记录某些内容。  根据lyfecyle活动图,你应该在这一点上做到这一点。

enter image description here

在您的活动中,您可能必须覆盖onDestroy方法并在超级呼叫之前调用日志。

@Override
public void onDestroy() {
    //log
    Log.d()
    super.onDestroy();
}

编辑: 胡安是对的,正如文档所提到的: “在某些情况下,系统会在不调用此方法(或其他任何其他方法)的情况下简单地终止活动的托管过程,因此不应将其用于执行过程消失后要保留的内容。 “

https://developer.android.com/reference/android/app/Activity.html#onDestroy%28%29