活动被销毁是因为方向改变还是因为应用程序正在关闭?

2023-11-24

我有一个Activity启动一个异步任务。允许以纵向或横向方向显示活动。当方向改变时,Activity 将被销毁并重新创建。无论方向改变多少次,任务都会继续工作。它还成功地将结果返回给活动(根据 CommonsWare 的回答)http://goo.gl/WF1yW).

我想要实现的是:当活动被销毁时,因为申请即将关闭- 任务应该被取消。然而,当活动因以下原因被破坏时方向改变- 任务不应被取消。

基本上问题是如何区分两种情况:应用程序正在关闭/方向改变。 在这两种情况下,都会调用 onDestroy() 方法,并且没有简单的方法来检查 isChangingOrientation() 等内容...

附:如有必要,我还可以考虑采用完全不同的方法。


您可以使用isFinishing()方法,检查活动是否将被终止或onDestroy()由于方向改变而刚刚调用的方法

@Override
protected void onDestroy() {
    super.onDestroy();
    if(isFinishing()){
        Log.i("DEBUG", "App will Terminate ");
    }else{
        Log.i("DEBUG", "Orientation changed");
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

活动被销毁是因为方向改变还是因为应用程序正在关闭? 的相关文章

随机推荐