ios - 在 Storyboard 中实现登录/注销的正确方法

标签 ios ios7 uistoryboard

我正在 iOS7 中开始一个新项目,我需要实现 OAuth 2 协议(protocol)才能登录。

我知道 OAuth 2 定义我需要存储 token 和刷新 token 才能访问服务器中的资源,当我注销时,它必须在服务器中撤销此 token 并将其从钥匙串(keychain)中删除,对吧? .

我的问题是完成它的正确方法是什么,我在 Storyboard 中有这个示例流程:

enter image description here

如果我错了请纠正我:

  • 在“启动画面”VC 中,我需要验证 token 或刷新它,对吗?或者在其他方面?
  • 如果 token 有效,我需要“弹出”或“推送”Tabbar VC?
  • 如果 token 无效,我需要“弹出”或“推送”登录 VC?
    • 当我成功登录时,我需要“弹出”或“推送”Tabbar VC 吗?
  • 最后一种情况,当用户按下“注销”时,我必须做什么?推送到登录 VC?内存呢?我的意思是,我知道在 Storyboard 中,当您“导航”时,您会在内存中分配每个子 vc,它会增加吗?我如何将所有内容“重新启动”到应用程序的初始状态?

PS:我的问题是关于 Storyboard 流程而不是关于 OAuth 2 PS2:对不起我的英语,任何更正请告诉我。

最佳答案

  1. 是的,在初始屏幕上您应该验证/刷新 token 。
  2. 您应该通过嵌入导航 Controller “推送”到标签栏 VC。
  3. 对于您的第三个问题同样如此,您应该在两种情况下都“插入”。
  4. 在注销期间只需“推”回 LoginVC,如果您启用了 ARC,则不必太担心内存问题,xcode 在分配和解除分配方面非常聪明。

关于ios - 在 Storyboard 中实现登录/注销的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20007027/

相关文章:

ios - ios 7中的UINavigationbar后退按钮

uisearchbar - 当 UI 搜索显示 Controller 变为事件状态时,移除或偏移半透明黑色覆盖

ios - 以编程方式设置 RoundedRect 按钮

ios - 自动布局黄色警告。它会使我的应用程序在运行时崩溃吗

iPhone Storyboard - 分配类以在 Storyboard中查看 Controller

ios - EKEventStore eventWithIdentifier 导致 EKCADErrorDomain 错误 1010

ios - Azure 通知中心不适用于 ios

iphone - 如何捕获 UITableView/UIScrollView 完整内容的 UIImage 并使其在 ios 设备上工作

ios - 您将如何以及在何处使用 instantiateViewControllerWithIdentifier

ios - 保持 uiview 突出显示(更改它的 alpha)直到另一个被点击