LoginManager
public class LoginManager
ログインマネージャー。 Yahoo! ID連携のクライアントに関する設定をし、認可リクエストを実行した結果を返す。
-
ログインマネージャーの共有インスタンス。
Declaration
Swift
public static let shared: LoginManager
-
LoginManager
の設定を行う。Declaration
Swift
public func setup(clientId: String, redirectUri: URL)
Parameters
clientId
アプリケーション登録時に発行したClient ID。
redirectUri
アプリケーション登録時に設定したフルURLもしくはカスタムURIスキーム。
-
Issuerの設定を行う。
Declaration
Swift
public func setIssuer(issuer: URL)
Parameters
issuer
Issuer。
-
enableUniversalLinksの設定を行う。
Declaration
Swift
public func setEnableUniversalLinks(enableUniversalLinks: Bool)
Parameters
enableUniversalLinks
trueならUniversal Linksを有効にする。
-
Yahoo! ID連携でログインを行う。
Note
ログイン処理は同時に1つしか実行されない。 メソッド呼び出し時にログイン処理が行われている場合、
LoginError.authenticating
のエラーを返す。Declaration
Swift
public func login( scopes: [Scope], nonce: String, codeChallenge: String, optionalParameters: OptionalParameters? = nil, viewController: UIViewController? = nil, completionHandler completion: @escaping (Result<LoginResult, LoginError>) -> Void)
Parameters
scopes
要求する
Scope
の配列。.openid
は必須。nonce
リプレイアタック対策のパラメーター。
codeChallenge
PKCEのパラメーター。
optionalParameters
認可リクエスト時に指定する任意パラメーター。
viewController
ログイン画面を表示するViewController。nilの場合は最前面のViewControllerにログイン画面を表示する。
completion
ログインアクション完了時に実行されるクロージャー。
-
AppDelegateからアプリにログイン処理が返ってきた際に、URLの処理を制御する。
Declaration
Swift
public func application(_ app: UIApplication, open url: URL?, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool
Parameters
app
アプリのシングルトン。
url
アプリが起動された際のURL。
options
URL制御のオプション。