示例移动应用程序 API 参考

示例移动应用程序使用 Swift 中的 Login View Controller, User Dashboard View Controller,Network Manager 类。

登录视图控制器

示例应用程序与适用于 iOS 应用程序的 Oracle Identity Cloud Service SDK 之间的所有交互都通过 LoginViewController.swift 类进行。

  • setupMSS() 方法创建由 SDK 使用的初始化参数字典,并使用这些参数初始化 OMMobileSecurityService 对象。示例应用程序可以使用不同的浏览器模式与 Oracle Identity Cloud Service 交互。在 setupMSS() 方法中,需要指定要使用的浏览器模式。

  • LoginViewController.swift 类使用 OMMobileSecurityServiceDelegate 协议与 Oracle Identity Cloud Service 实例交互。此内部类包含 SDK 执行的每个操作的回调方法。

  • 对设置完成事件调用 completedSetupWithConfiguration() 方法,该事件是由于 OMMobileSecurityService.setup() 方法而触发的。

  • 对因 OMMobileSecurityService.authenticate() 方法而触发的验证事件的质询调用 didReceiveAuthenticationChallenge() 方法。

  • 对因凭证验证和重定向而触发的验证完成事件调用 didFinishAuthentication() 方法。

  • 对因 OMMobileSecurityService.logout() 方法而触发的验证事件的质询调用 didReceiveLogoutAuthenticationChallenge() 方法。

  • 在注销完成事件上调用 didFinishLogout() 方法,这是由于注销验证和重定向而触发的。

  • LoginViewController.swift 实现 didReceiveLogoutAuthenticationChallenge 方法。此方法使用之前定义的浏览器类型调用 Oracle Identity Cloud Service 注销 URL。

用户仪表盘视图控制器

成功登录后,样例应用程序将显示由 UserDashboardViewController.swift 类表示的用户屏幕。

网络管理器

Oracle Identity Cloud Service 的所有网络调用都通过使用 NetworkManager.swift 单件网络类进行,并使用完成处理程序进行回调。

NetworkManager.swift 类实施函数以从 Oracle Identity Cloud Service 请求以下信息:

  • 分配给用户的应用程序列表:对 admin/v1/MyApps 端点的 HTTP 调用

  • 分配给用户的组列表:对 admin/v1/MyGroups 端点的 HTTP 调用

  • 登录用户的信息:对 admin/v1/Me 端点的 HTTP 调用