Android 在 onDestroy() 时启动另一个 Activity;
Android start another Activity when onDestroy();
我需要销毁 activity HomeActivity
onDestroy();
然后当进入应用程序时启动 activity SplashActivity
就像一个新的 Intent
.任何想法都清楚吗?
Intent with flag - 清除历史记录
onDestroy()
仅当您在 activity 上调用 finish()
或系统临时破坏系统时才会调用。因此,由于您没有在 activity 上调用 finish(),因此不会调用 onDestroy()
。解决方法是在 onstop()
方法中启动启动画面 activity。像这样
@Override
public void onStop(){
super.onStop();
startActivity(new Intent(this, SplashScreen.class))
}
如果您想从 activity 堆栈中删除旧的 activity,请使用这些意图标志
启动新的 activity
Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
It will clear activity stack and you new activity will be the only
activity in the stack.
我需要销毁 activity HomeActivity
onDestroy();
然后当进入应用程序时启动 activity SplashActivity
就像一个新的 Intent
.任何想法都清楚吗?
Intent with flag - 清除历史记录
onDestroy()
仅当您在 activity 上调用 finish()
或系统临时破坏系统时才会调用。因此,由于您没有在 activity 上调用 finish(),因此不会调用 onDestroy()
。解决方法是在 onstop()
方法中启动启动画面 activity。像这样
@Override
public void onStop(){
super.onStop();
startActivity(new Intent(this, SplashScreen.class))
}
如果您想从 activity 堆栈中删除旧的 activity,请使用这些意图标志
启动新的 activityIntent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
It will clear activity stack and you new activity will be the only activity in the stack.