Android应用程序在后台被杀死-返回登录屏幕的最佳实践?
如果应用程序在后台被系统杀死,我希望用户返回堆栈中的第一个活动,即登录活动 目前,我通过检查每个活动的Android应用程序在后台被杀死-返回登录屏幕的最佳实践?,android,android-fragments,android-support-library,Android,Android Fragments,Android Support Library,如果应用程序在后台被系统杀死,我希望用户返回堆栈中的第一个活动,即登录活动 目前,我通过检查每个活动的onCreate()中的应用程序级变量并启动登录活动来实现这一点: @Override protected void onCreate(Bundle savedInstanceState) { if (wasKilledInBackground()) { Intent intent = new Intent(this, LoginActivity.clas
onCreate()
中的应用程序级变量并启动登录活动来实现这一点:
@Override
protected void onCreate(Bundle savedInstanceState) {
if (wasKilledInBackground()) {
Intent intent = new Intent(this, LoginActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
super.onCreate(null);
finish();
return;
}
这是可行的,但它要求我们向每个活动添加代码,因为不能执行onCreate()的其余部分(缺少静态模型类)
在iOS上,可以为整个应用程序禁用状态恢复
我想知道是否有a)除了触摸每个活动之外,还有更好的重定向到登录的方法,或者b)与iOS上可用的类似的方法在哪里设置应用程序级别变量?基本上,我们将静态数据附加到用户登录时填充的应用程序类。如果在创建活动时它不存在,我们知道应用程序一定已被杀死。我们无法保留此数据,因此需要从服务器再次查询。请查看是否可以使用