2013-10-29 132 views
0

我有一个安静的大应用程序,有时用户使用HOME BUTTON'退出'应用程序或他接到一个电话等,但当他再次点击图标时,应用程序恢复。如何在重新启动应用程序之前启动一项活动?

我想要的是每次发生这种情况时,应用程序会在登录活动(安全过程)上重新启动,然后再退出应用程序之前继续运行上一个活动。

回答

0

传递一个额外的任何活动,您登录后拨打:intent.putExtra("isLogin", "Yes");

在每一个活动,您拨打:

声明场boolean isLogin;

在的onCreate:

Intent sender = getIntent(); 
isLogin = sender.getStringExtra("isLogin","No") == "Yes"; 

在onResume的每项活动都是这样做的:

if(isLogin){ 
    isLogin = false; 
}else{ 
    callActivityLogin(); 
} 
+0

2个问题:首先他会怎么知道他是否登录了?第二个问题是,如果我调用登录活动,它将重新启动整个过程,我想要它调用正在运行的活动 – user2137817

+0

您可能需要重构登录活动代码以处理两种情况:第一次登录和后继登录。在第二种情况下,如果登录成功,只需要调用finish()返回上一个活动。 – ramaral

+0

我知道,但问题是如何以编程方式做到这一点,这就是为什么我发布的问题 – user2137817

1

当HOME按钮被按下时,我相信你的活动的onStop()和/或onPause()函数将被调用。覆盖这些方法之一并设置成员变量来检查您的活动是否中断。现在覆盖onResume()检查该变量以确定是否要开始登录活动。

希望这个想法让你朝正确的方向发展。

您也可以考虑创建一个扩展Activity的超类,并覆盖onStop()/onPause()/onResume()方法以展现此功能。这样,除了登录活动之外,您的所有活动都可以扩展此类,从而使您可以在一个位置放置所需的功能。

相关问题