在我的应用程序中,我有一个Home viewcontroller,用户可以从中登录,重置密码,并跳转到其他页面。
如果我点击"忘记密码",我会收到一封邮件,我可以在其中重置密码。当我从电子邮件重定向回来时,我希望应用程序保留在同一个Home viewcontroller中。
如果我的流程是:点击"忘记密码"来自home viewcontroller - >然后转到ForgotPassword viewcontrollers - >退出应用 - >然后转到我的邮件并重置密码,即便如此我希望应用程序在主页本身打开前景,而不是我退出应用程序或最小化应用程序的任何其他viewcontrollers。
我该怎么做?谢谢
答案 0 :(得分:1)
您可以通过更改密码后管理标志并在后台运行应用程序来实现。
让我解释一下,在AppDelegate中取一个全局$ g++ a.cpp -o test -lgflags
。当最终使用将进入重置密码屏幕并成功重置密码时,您需要进行var isChangedPwd = false
然后管理isChangedPwd = true
中的标记,如下所示
applicationDidEnterBackground
这意味着当您的func applicationDidEnterBackground(_ application: UIApplication) {
if isChangedPwd {
exit(0)
}
}
为真并且应用将进入后台时,您的应用将退出并将在初始级别启动。
注意:如果您不想使用退出(0)而不是在初始级别启动应用,那么您可以重定向到主页以下代码。
isChangedPwd
答案 1 :(得分:0)
据我了解你的问题: 您希望每当用户点击HomeScreen上的“忘记密码”时,用户将被定向到ForgotPasswordScreen,然后用户收到一封邮件(带有重置密码的链接[所有这些由您的服务器完成])。回到应用程序,用户应该显示HomeScreen,无论是启动应用程序还是已经在后台。
如果上面是场景,那么我猜你正在执行一项额外的任务。
我建议不需要ForgotPasswordScreen,只需显示带有文本字段的警报,让用户输入电子邮件ID即可向其发送密码重置邮件。
你应该设置一个标志 isLoggedIn
如果 isLoggedIn == true ,则只加载其他viewControllers。
isLoggedIn 必须是一个全局变量,只应在成功登录/注销时设置