gpt4 book ai didi

android:clearTaskOnLaunch 不起作用如何在前台清除后台堆栈?

转载 作者:太空狗 更新时间:2023-10-29 15:10:28 24 4
gpt4 key购买 nike

我的应用程序需要这种行为,“用户每次尝试启动它时都必须登录(直接触摸应用程序图标,或通过任务管理器或通过最近的应用程序)”所以 Activity 是按这个顺序的(认为应用程序名称是 Foo 应用程序)

  1. S - 启动画面
  2. L - 加载屏幕
  3. Lo - 登录屏幕
  4. M - 主菜单(包含任务列表)
  5. T - 任务屏幕

“用户启动应用程序并按以下顺序进行: S -> L -> Lo(登录)-> M(选择其中一项任务)-> 任务屏幕

  • 因此,当他在任务屏幕中时,他按下主页按钮,应用程序进入后台,然后他使用另一个应用程序。并再次启动 Foo 应用程序。所以如果他按下后退按钮,它会显示之前使用的任务屏幕???如果再次按下后退按钮,它会再次进入主屏幕,依此类推...???

  • 这不应该发生,只是我想要的是,当应用程序进入前台时,用户需要登录并且永远无法返回到任何屏幕。

注意:所有的屏幕都扩展了一个 BaseActivity 类,该类扩展了 Activity 类。在那里,我使用了 onResume()、onPause() 方法和另一个自定义方法来确定扩展子类何时暂停,并在应用程序从后台返回时恢复!!!在某些 Screen 中,我也不得不使用 Fragments...!

提前感谢您的宝贵时间和帮助!

最佳答案

将标签 android:clearTaskOnLaunch="true" 添加到 list 中的根(主要) Activity 标签。然后用户将始终返回此 Activity 。

要从任何其他 Activity 跳转到登录,请使用:

public static void logoff(Context c){
Intent logoff = new Intent(c,LoginActivity.class);
logoff.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
c.startActivity(logoff);
}

关于android:clearTaskOnLaunch 不起作用如何在前台清除后台堆栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17107037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com