登录功能在我的项目中工作正常(用户名和密码保存在UserDefault中),但每次关闭该应用程序时,都必须重新登录.所以我的问题是:如何自动登录用户?或者更好的说:如何检查数据(保存在UserDefault中)是否与数据库(MysqL)中相同?
解决方法 >第一次当用户登录时,保存用户凭据在iPhone的钥匙扣.
>当应用程序再次打开时,您将检查用户凭据
在钥匙串中存在,如果是,您的代码应该调用登录
逻辑并自动登录,登录屏幕后进入屏幕.如果不,
那么你应该显示登录屏幕.您可以在AppDelegates applicationDIDFinishLaunching中执行此逻辑.
>每当用户单击注销按钮时,从中删除用户凭据
钥匙扣第一,并返回登录控制器.
只需在用户登录时将登录凭据添加到钥匙串,并在用户单击注销按钮后才将其删除.如果用户在没有注销的情况下退出应用程序,那么凭证仍将在钥匙串中,并且您可以在用户返回到应用程序时检索它们.
编辑:我想我还必须增加一件事情.如果您的登录逻辑需要时间(例如使用Web请求或某些内容登录),请将登录逻辑代码放在登录VIEwController而不是ApplicationDelegate中,并在自动登录期间使用任何活动指示器处理.
编辑:我编辑了整个答案,用钥匙扣取代了NSUserDefault. This线程解释为什么.
总结以上是内存溢出为你收集整理的iphone – iOS:登录后如何验证用户(自动登录)?全部内容,希望文章能够帮你解决iphone – iOS:登录后如何验证用户(自动登录)?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)