如何在Swift(iOS)中保持用户登录?

时间:2018-07-01 19:37:54

标签: ios swift login

我正在制作一个最初要求用户登录并成功登录的应用程序。将用户带到其仪表板。但是,现在,当我关闭该应用程序时。我希望用户登录,并且该应用程序直接从其仪表板而不是登录页面打开。我该怎么做?

Please see the link (gif), as I'm not able to show it here because it's my first question on stackoverflow

P.S。我是iOS的新手,我上网冲浪并找到了“ UserDefaults”。.但其中的所有内容都包括在情节提要中使用导航控制器。.我未使用任何导航控制器。.只是使用了“显示”选项,以过渡到用户仪表板。

My storyboard image, segue.

请帮助!

谢谢。

2 个答案:

答案 0 :(得分:1)

使用导航控制器不会影响用户默认设置。在应用程序中的任何地方,您都可以致电

IServiceScopeFactory

然后您可以通过调用来写默认值

let defaults = UserDefaults.standard

然后通过执行以下操作检索该值

defaults.setValue(value, forKey: "key")

根据您用于登录的内容,您需要确定需要保存和检索的内容以及发生的时间和地点

答案 1 :(得分:0)

我同意使用<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous"> <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script> <nav class="navbar navbar-expand-md navbar-dark bg-dark"> <a href='/' class="navbar-brand"> <img style='max-width: 100%;' src='logo.png' /> </a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul style="margin: 0;" class="navbar-nav mr-auto"> <li class="nav-item"> <a class="nav-link" href="/">Home</a> </li> <li class="nav-item"> <a class="nav-link" href="blog.php">Blog</a> </li> <li class="nav-item"> <a class="nav-link" href="contact.php">Contact</a> </li> </ul> </div> </nav>,但是add_action('publish_listings', 'vba_update', 10, 1); add_action('draft_listings', 'vba_update', 10, 1); function vba_update($post_id){ $args = array( 'include' => tb_get_followers($user_id) ); $user_query = new WP_User_Query($args); if ( !empty($user_query->results) ) : $post_title = get_the_title( $post_id ); $post_url = get_permalink( $post_id ); $subject = 'A post has been updated'; $message = "A post has been updated on your website:\n\n"; $message .= "<a href='". $post_url. "'>" .$post_title. "</a>\n\n"; /** Send an individual message to each user */ foreach ( $user_query->results as $user ) : wp_mail($user->data->user_email, $subject, $message); endforeach; endif; } 易于访问并且不安全。如果您要存储敏感数据(例如令牌),则需要找到安全的解决方案。如果您想安全地存储数据,可以选择UserDefaults

第三个选择是将令牌存储在UserDefaults中。这也是一种安全的方法。优点是,您的所有应用程序(同一开发人员)都可以使用相同的令牌,并且即使删除/重新安装了该应用程序,令牌也仍然存在。