官方文档

Google登录接入Android官方文档

创建应用

首先去Google开发者平台添加一个自己的应用,得到自己的参数

SDK集成

  • Maven方式
  • 在您的项目中,打开 your_app > Gradle Scripts > build.gradle (Project),确保下列存储库都添加到 buildscript { repositories {}} 中以及allprojects {repositories {}}中
google()
jcenter() 
  • 在您的项目中,打开 your_app > Gradle Scripts > build.gradle (Module: app) 并将下列执行语句添加到 dependencies{} 部分,以便依赖于最新版的 Facebook 登录 SDK:
 compile 'com.google.android.gms:play-services-auth:11.8.0'compile 'com.google.code.gson:gson:2.8.2'

编辑资源和清单

  • 打开 /app/res/values/strings.xml 文件,在Web client (Auto-created for Google Sign-in)这个API中得到你的server_client_id
<string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>

SDK的API使用

  • SDK的初始化,在onCreate()中调用,注意修改自己的server_client_id
String clientId = "YOUR_SERVER_CLIENT_ID";GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestEmail().requestIdToken(clientId).build();mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
  • 在你需要调用登录的地方调用登录接口
Intent signInIntent = mGoogleSignInClient.getSignInIntent();startActivityForResult(signInIntent, 1000);
  • 在 onActivityResult 方法中处理登录的回调
     @Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);GoogleSignInClient.getSignInIntent(...);if (requestCode == 1000) {Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);handleSignInResult(task);}}private void handleSignInResult(Task<GoogleSignInAccount> completedTask) {try {GoogleSignInAccount account = completedTask.getResult(ApiException.class);Log.e(TAG, account.getId()+"-" + account.getIdToken()+"-");} catch (ApiException e) {Log.w(TAG, "signInResult:failed code=" + e.getStatusCode());}}

这样一个简单的Google登录客户端API已经完成了,如果需要服务端校验,可以参考Google登录校验

应用测试

  • 测试手机:需要翻墙
  • 需要有google play服务,可以到各大应用商店下载:谷歌安装器
  • 将代码debug安装到手机运行测试

注意事项

  • 在登录初始化的时候,要追加.requestIdToken(clientId), 否则登录成功回调中收不到id_token, id_token可以发去自己的服务端进行校验

Google Play登录SDK接入相关推荐

  1. SDK接入(2)之Android Google Play内支付(in-app Billing)接入

    SDK接入(2)之Android Google Play内支付(in-app Billing)接入 SDK接入(2)之Android Google Play内支付(in-app Billing)接入 ...

  2. 社会化登录分享-微信SDK接入

    本篇在基于之前封装的SocialSDK的项目上增加了微信SDK的登录授权和分享.简单介绍了微信登录分享的接入和使用注意 具体代码项目Github地址:github.com/tsy12321/So- 0 ...

  3. Unity借助Eclipse导Jar包接入QQ登录SDK

    首先还是Unity大知识点列表 然后开始边做边记录吧! 申请QQ互联开发者身份 链接:https://connect.qq.com/index.html 需要实名认证,提交手持身份证照片,申请后等待审 ...

  4. 九麟SDK 接入文档

    1接入登录SDK AndroidManifest.xml 添加代码 权限 <uses-permission android:name="android.permission.INTER ...

  5. GoogleAdMob广告 SDK接入(Android)

    1.发包平台 需要一个能够打Andoird包的环境. 2.获取广告ID (注:需要有一个Google账号.) 1.登录连接:AdMob官方 2.添加应用 3.这里看具体项目选择,此处选否 4.输入应用 ...

  6. Cocos Creator Android 平台 Google 原生登录

    在海外项目中,我们通常需要接入 Google 帐号登录,这样可以提高应用使用率. 下面以 Android 平台 接入 Google 原生登录为例,进行详细说明. 一.准备工作 1.需要 Android ...

  7. 修改串口设备名ttymxc1_ESP8266接入阿里云——基于官方SDK接入阿里云串口获取云下发数据...

    作者:电子快递哥 日期:于2020年3月18日 有态度,有温度,欢迎关注电子快递哥,转载请注明出处, ESP8266接入阿里云 --之一基于官方SDK接入阿里云串口获取云下发数据 一.获取阿里云IoT ...

  8. esp8266 阿里云 arduino_ESP8266接入阿里云——基于官方SDK接入阿里云串口获取云下发数据...

    作者:电子快递哥 日期:于2020年3月18日 有态度,有温度,欢迎关注电子快递哥,转载请注明出处, ESP8266接入阿里云 --之一基于官方SDK接入阿里云串口获取云下发数据 一.获取阿里云IoT ...

  9. XCode SDK接入时提示: UIApplicationInvalidInterfaceOrientation

    2019独角兽企业重金招聘Python工程师标准>>> 工作中因为要接IOS版本第三方的SDK,连学带做看了一天的Object-C,接入过程中遇到了一些问题,这里记录一下. 问题一: ...

最新文章

  1. imp.load_module(#39_pywrap_tensorflow_internal#39
  2. BFD (双向转发检测) 协议简介与开发
  3. Android中通过Java代码实现ScrollView滚动视图-以歌词滚动为例
  4. SPField的几种name的释疑
  5. 32张感恩海报!武汉市文化和旅游局这波操作太可以了
  6. 几行代码搞定Flash应用的多语言实时切换问题
  7. html if语句多条件,nginx if多条件判断的实现
  8. hihocoder 1388 Periodic Signal
  9. matlab的梯形公式推导公式,复化梯形公式,辛普森公式的matlab程序
  10. 神思第二代身份证验证系统
  11. 为什么要学习HashMap的底层原理?
  12. 龙芯1c300b开发语言,龙芯 1C0300B 主控芯片已成功进入激光打印机市场
  13. ubuntu:防火墙配置详细讲解(全)
  14. 有限责任公司章程(中英文版)
  15. 关于LDO并联在输入输出端二极管
  16. Gazebo機器人仿真學習探索筆記(七)连接ROS
  17. 中国古典爱情故事系列
  18. linux系统查看主板cpu,Linux下使用lm_sensors查看主板和CPU温度
  19. 采用的并行计算机结构介绍,高性能并行计算机体系结构和典型的 DSM 系统-SPP1200/XA...
  20. 卖家考核分级 竞品分析

热门文章

  1. 如何将AI模型集成到android应用(app)中
  2. 完全免费!这个AE模板、AE插件网站,绝对是视频作者的福音
  3. 获取手机号码/判断Sim卡状态
  4. 树-广度优先和深度优先搜索算法
  5. 如何构建Trello Chrome扩展程序-API身份验证
  6. 世界时间(卡西欧电波表24个城市缩写翻译及简介)
  7. Java落寞了?7 月编程语言最新排行榜
  8. 携程笔试(惨败经历)第一题 leetcode 253
  9. 金九银十:怎么正确跟 HR 谈薪资?
  10. 【聯強EMBA】「本能叛逆」與「理性叛逆」