使用我们的 Android 示例应用来了解登录功能的工作原理,或将登录功能添加到您的现有应用。
必需:最新版 Android Studio 和 Google Play 服务。
获取项目
如果这是您首次使用 Google 服务示例,请查看 google-services 代码库。
$ git clone https://github.com/googlesamples/google-services.git
打开 Android Studio。
选择文件 > 打开,浏览到克隆 google-services
代码库的位置,然后打开 google-services/android/signin
。
配置 Google API 控制台项目
如需使用此示例,您需要配置一个带有 Android 客户端和 Web 应用客户端的 Google API 控制台项目:
- 在 API 控制台中打开现有项目,或创建一个项目(如果您还没有项目)。
- 在 OAuth 同意屏幕页面上,确保所有信息完整且准确。
-
在“凭据”页面上,创建一个 Android 类型的客户端 ID。示例应用的软件包名称为
com
。您还需要提供签名证书指纹的 SHA-1 哈希值。如需了解详情,请参阅对客户端进行身份验证。.google .samples .quickstart .signin -
在“凭据”页面上,创建一个Web 应用类型客户端 ID。您可以将“已获授权的 JavaScript 来源”和“已获授权的重定向 URI”字段留空。示例的
IdTokenActivity
和ServerAuthCodeActivity
示例需要使用此 Web 客户端 ID。在真实应用中,此客户端 ID 将代表应用的后端服务器。 -
将客户端 ID 复制并粘贴到项目的
strings.xml
文件中:<string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>
运行示例
现在,您可以构建示例并从 Android Studio 运行它了。
构建示例并点击运行按钮,然后选择已安装最新版 Google Play 服务的已连接设备或模拟器。
![](https://developers.google.cn/static/identity/sign-in/android/images/gmpSignInAndroidRunSample.png?authuser=0000&hl=hr)
运作方式
应用会构建 GoogleSignInClient
,并指定所需的登录选项。然后,当用户点击登录按钮时,应用会启动登录 intent,提示用户使用 Google 帐号登录。
// Configure sign-in to request the user's ID, email address, and basic // profile. ID and basic profile are included in DEFAULT_SIGN_IN. GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() .build();
// Build a GoogleSignInClient with the options specified by gso. mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
private void signIn() { Intent signInIntent = mGoogleSignInClient.getSignInIntent(); startActivityForResult(signInIntent, RC_SIGN_IN); }
后续步骤
如果您想了解如何在您自己的应用中实现 Google 登录功能,请查看我们的实现指南。
你的体验是否顺利?遇到问题? 请告诉我们!