【问题标题】:Exiting app after logout [duplicate]注销后退出应用程序[重复]
【发布时间】:2013-06-10 19:14:21
【问题描述】:

即使在经历了几个问题之后,当用户退出应用程序时该怎么做还是有点混乱。理想情况下应该怎么做?如何退出应用程序?

【问题讨论】:

  • Android 应用程序的设计初衷不是为了退出应用程序。您可以这样做,但不建议这样做,因为 UI 生命周期将为您处理所有这些。您是否有特定原因需要完全退出您的应用程序? SO上有很多关于这个的问题。搜索一下:)
  • this 可能会有所帮助
  • 如何显示登录页面 - 以便其他用户无需再次启动或第一个用户意外点击注销即可使用该应用程序。
  • 你的问题解释不多。您是在谈论通过数据库本地登录,还是维护会话或使用 Web 服务或通过 3rd 方 api。说清楚,同时阅读this

标签: android


【解决方案1】:

这不是一个非常可行的解决方案,但对你有用。

希望您将用户的登录信息存储在 SharedPreference 或 DB 中。一旦用户点击注销按钮清除登录数据并在当前活动上调用 finish(),并在所有活动的 onResume() 中检查用户是否已登录或者不,如果不是也打电话给finish()

希望这是您正在寻找的解决方案。

【讨论】:

    【解决方案2】:

    您可以在用户退出后启动家庭活动:

    根据Android documentation

    这是 home Activity,即设备启动时显示的第一个 Activity。

    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent );
    

    【讨论】:

      【解决方案3】:

      Android 操作系统会在应用“退出”时进行处理 - 通常是在可用内存量变低时。当您的用户注销时,我认为您应该返回登录屏幕,然后让用户离开。该进程可能会继续在后台运行,也可能会被销毁以释放系统资源。

      查看official tutorial on Activity lifecycle 以更好地了解操作系统中有关退出应用等的情况。

      【讨论】:

        【解决方案4】:

        您不应该退出应用程序,您应该只清除会话令牌,然后将用户返回主屏幕(换句话说,终止会话)。让 ActivityManager 杀死你的应用。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-01-17
          • 1970-01-01
          • 1970-01-01
          • 2011-10-25
          • 2015-06-08
          • 2011-07-12
          • 1970-01-01
          • 2011-07-28
          相关资源
          最近更新 更多