2012-01-09 86 views
0

我有三个活动,让我们称他们为Act1,Act2和Act3。在Act1上有一个登录表单(成功登录后)进入Act2,它有两个选项(1.转到Act3,用一些额外的数据转到Act3)。用户然后去Act3。Android当从主屏幕恢复应用程序,切换到不同的活动

当然,当用户按下“home”按钮时,应用程序被最小化并保存在内存中,直到android需要使用内存为止(在这种情况下,应用程序被销毁)。但是,当用户按下“主页”按钮,然后再次快速打开应用程序时,应用程序将恢复到最小化前处于前景的活动状态。

我希望能够最小化应用程序,然后一旦重新打开,直接进入Act1以提示用户再次登录。我不希望应用程序能够在Act2或Act3中恢复。

回答

1

除非您的应用程序确实对安全敏感,否则默认行为应该对用户更好:每次启动应用程序时输入登录名和密码可能会非常烦人。以本地GMail应用程序为例:它不要求您每次打开时都要重新进行验证。现在,如果你的应用程序确实需要这种行为(比如它是信用卡安全或类似的),那么我的第一个猜测就是处理Act3的onPause()并从那里调用finish()。只要小心不要调用finish()两次(请参阅isFinishing())。另外,由于这是用户期望的破坏,因此要向用户明确表示您的应用程序的行为类似于其安全性,而不是因为它想要讨厌。

0

当用户离开你的活动(例如按home键)时,首先调用onPause()方法。您应该能够在那里处理您的逻辑(例如,在Act2或Act3上调用finish())。

编辑:heh,是的,他说的是:D

相关问题