LoginManager

public class LoginManager

ログインマネージャー。 Yahoo! ID連携のクライアントに関する設定をし、認可リクエストを実行した結果を返す。

Public propety

  • ログインマネージャーの共有インスタンス。

    Declaration

    Swift

    public static let shared: LoginManager

Public function

  • 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の処理を制御する。

    Note

    iOS10をサポートする場合は必須。

    Declaration

    Swift

    public func application(_ app: UIApplication, open url: URL?, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool

    Parameters

    app

    アプリのシングルトン。

    url

    アプリが起動された際のURL。

    options

    URL制御のオプション。