锁屏和打开其他应用的生命周期有什么区别android

What is the difference in lifecycle between lock screen and opening other application android

我现在正在开发 application,问题是当我从 notification 按下 homeopen whatsapp 并重新打开application,它从 application 的开头重新开始,而不是 resuming 到它离开的状态。

锁定然后解锁时,屏幕会恢复到之前的状态。

因此,我尝试跟踪这两个进程之间的 life-cycle(锁定屏幕和打开其他 app/home)。 让我感到困惑的是,当我锁定屏幕或打开其他 app/home 时,两个进程都显示相同的 lifecycleonPause()onStop() 被触发。然后,当我返回应用程序时,onRestart()onResume() 被触发。

如果两者显示相同的结果,为什么锁定屏幕和解锁继续 application,而按 home 或另一个 application 并重新打开 application 却没有?

感谢任何解决方案或解释。谢谢。

代码:

@Override
protected void onRestart(){
    System.out.println("Restart");
    super.onRestart();
}

@Override
protected void onResume(){System.out.println("Resume");
    gamePanel.resumeActivity();
    super.onResume();
}

@Override
protected void onPause(){
    gamePanel.pauseMusic();
    gamePanel.pauseActivity();
    System.out.println("PAUSE");
    super.onPause();
}
@Override
protected void onStop(){
    System.out.println("STOP");
    super.onStop();
}
@Override
protected void onDestroy(){
    content.removeView(gamePanel);
    content.removeView(editText);
    gamePanel.stopMusic();
    System.out.println("DESTROY");
    super.onDestroy();
}

我认为您必须使用 onSaveInstanceState(Bundle savedInstanceState) 才能在您的应用销毁时获取数据。 请看一下that Link,对你有帮助