Android 按下back键后,使应用程序启动活动在应用程序管理中不可见
基本上,我的应用程序中有3个活动。称它们为A、B和Login,A和B向用户显示非常敏感的数据。合法流程的形式是启动->登录->a->B->a->B…->a->退出。我真正想要的是,如果由于某种原因,应用程序在a或B上运行时进入后台(通过按back或home或其他方式),那么不管应用程序以何种方式重新启动(或以某种方式跟踪,包括长时间按home菜单)它不会显示A或B内容。他可以看到登录页面的内容,也可以什么都看不到Android 按下back键后,使应用程序启动活动在应用程序管理中不可见,android,Android,基本上,我的应用程序中有3个活动。称它们为A、B和Login,A和B向用户显示非常敏感的数据。合法流程的形式是启动->登录->a->B->a->B…->a->退出。我真正想要的是,如果由于某种原因,应用程序在a或B上运行时进入后台(通过按back或home或其他方式),那么不管应用程序以何种方式重新启动(或以某种方式跟踪,包括长时间按home菜单)它不会显示A或B内容。他可以看到登录页面的内容,也可以什么都看不到 noHistory几乎就是我想要的,但不是一个好的解决方案,因为我想允许从a到B再
noHistory几乎就是我想要的,但不是一个好的解决方案,因为我想允许从a到B再回到a的直观导航。那么它是如何实现的呢?尝试以下伪操作:
public A extends Activity
{
boolean just_launched = true;
void onPause()
{
just_launched = false;
}
void onResume()
{
if (!just_launched)
finish();
}
}
查看活动属性
当值为“true”时,每次用户再次启动任务时,他们
无论最后是什么,都会被带到它的根活动中
在任务中做什么,不管他们是在家还是在家
按钮离开它
你想把它放在哪个活动上?我相信你会把它放在你的登录活动上。从文档中可以看出:“有人从主屏幕启动活动P,然后进入活动Q。用户接下来按home键,然后返回活动P。正常情况下,用户会看到活动Q,因为这是他们在P的任务中最后一次执行的操作。但是,如果P将此标志设置为“true”,则所有活动都会显示在活动Q之上(在本例中为Q)在用户按下Home键且任务转到后台时被删除。因此用户返回任务时只看到P。”