GoogleSignInSwift 0.3.2

GoogleSignInSwift 0.3.2

Josh Kowarsky 维护。



  • Josh Kowarsky

GoogleSignInSwift

CI Status Version License Platform

GoogleSignInSwift 使用 OAuth 2.0 来获取用户的 Google 身份验证凭据以及他们的配置文件信息。 GoogleSignInSwift 完全使用 Swift 写成。您可以在这里找到有关 Google OAuth 2.0 登录协议的更多信息。

安装

GoogleSignInSwift 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile 中。

pod 'GoogleSignInSwift'

使用

设置

GoogleSignIn 提供您的应用的 Google API 客户端 ID 以及任何 Google API 范围

GoogleSignIn.shared.clientId = "<Google API Client ID>"
GoogleSignIn.shared.addScope("<Google API Scope>")

登录

GoogleSignIn.shared.delegate = self
GoogleSignIn.shared.presentingWindow = view.window
GoogleSignIn.shared.signIn()

通过实现GoogleSignInDelegate来监听完成

func googleSignIn(didSignIn auth: GoogleSignIn.Auth?, user: GoogleSignIn.User?, error: Error?) {
    if let error = error {
        print("Error signing in: \(error)")
        return
    }
    // Route user to app
}

使用访问令牌

虽然您可以通过 GoogleSignIn.shared.auth?.accessToken 访问令牌,但建议您使用 GoogleSignIn.shared.refreshingAccessToken。如果令牌已过期,此方法将刷新并返回新的有效令牌。

GoogleSignIn.shared.refreshingAccessToken { token, _ in
    guard token != nil else {
        return
    }
    // Use token
}

登出

GoogleSignIn.shared.signOut()

获取配置文件

GoogleSignIn.shared.getProfile { user, error in
    //
}

注意:在用户登录时默认为您完成一次。

使用登录获取用户电子邮件

要获取用户电子邮件,确保在登录前设置此功能。

GoogleSignIn.shared.email = true

您还可以禁用profile(默认true

身份验证状态

GoogleSignIn.shared.isSignedIn

示例

要运行示例项目,首先克隆仓库,然后从示例目录运行 pod install

作者

J0shK

许可

GoogleSignInSwift遵循MIT许可。有关更多信息,请参阅LICENSE文件。