添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

由于公司做海外产品需接入Google三方登录,并且登录后除获取邮箱,用户名和用户id等基本信息外还要获取用户的性别年龄甚至手机号等信息。后面的需求实现起来就有点坑了,主要原因:Google的文档写得真心乱。看网上很多人踩了很多坑还是没找到很好的方法,于是把自己采坑后成功解决的步骤记录下来供大家参考,不谢。

1,打开官网文档, https://developers.google.com/identity/sign-in/android/start

在这里插入图片描述
点击按钮配置一个项目,选择create a new project创建新项目,输入项目名称。
在这里插入图片描述

配置项目,选择Android平台,将包名和SHA-1码填入。

注意,如果你不想每次调试都打正式签名包,你应该首先配一个debug签名的SHA-1进去,点击下图中的learn more链接可以找到获取debug签名SHA-1的方法。我在mac下获取的终端命令是:keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore

在这里插入图片描述
创建成功后按照文档一步一步写代码集成就可以啦。可以下载Google官方的实例代码或者文末我的示例工程。这个主要的坑就是这个项目配置,包名和对应的SHA-1码一定要填对,而且如果是直接部署(run)到手机用的是debug的签名文件,就一定要配debug签名文件的SHA-1码,否则会返回错误码10。同理正式打包后测试也要配正式签名文件的SHA-1码。

接下来就是进一步获取用户的性别年龄甚至手机号等信息了。

代码在文末的demo里,这里就不写了。主要是需要用到Google的people api。需加上以下依赖库。
在这里插入图片描述
这里需注意:
1.因为用到了people api,所以需要在Google后台的配置刚才这个项目的people api为启用状态。否则报错如下:“People API has not been used in project 788056243672 before or it is disabled. Enable it by visiting
https://console.developers.google.com/apis/api/people.googleapis.com/overview?project=788056243672 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.”,
如果报错点击这个地址可直接进入启用people api界面。或则直接到后台找到people api启用。
2。 一定要写明要请求的用户信息的字段,即通知setPersonFields(“names,emailAddresses,phoneNumbers,genders,birthdays”)方法,字段以逗号分隔。不写的话报错如下:personFields mask is required. Please specify one or more valid paths. Valid paths are documented at https://developers.google.com/people/api/rest/v1/people/get,点击这个地址可以看到有哪些用户信息字段可申请。
在这里插入图片描述

项目下载: https://download.csdn.net/download/hongenit/11103754

集成 google 登录 之前需要有一下三点要求,只有具备一下两点要求才能 集成 google 登录 :1,android 运行版本4.0及更新版本2,android 设备支持谷歌服务。 只要您遵循这些步骤,您应该能够轻松解决您遇到的谷歌注册验证问题。在遇到问题时,及时采取行动,并采取所有必要的步骤以解决谷歌注册无法验证的问题。通过正确的方式联系客户支持,您的问题将得到有效的解决,并可以恢复对您的谷歌帐户的访问。然而,有时候您可能会遇到一些麻烦,例如无法验证您的帐户,这可能会非常令人沮丧。一旦您清除了缓存和Cookie,您可以再次尝试验证您的谷歌帐户。 来源:http://www.cnblogs.com/android100/p/android-get-num.html 最近做到一个项目,需要 获取 手机号 。项目中使用的手机卡为电信卡,那么就以此为例吧。 网上不符合需求的方法 Google 了一下,网上的做法如下:  // 获取 手机号 码   TelephonyManager tm = (TelephonyManager)this.getSy... 一、调用 web 服务 获取 号码归属地:1、设置布局:android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" >android:layout_width="fill_parent"android:layout_height="wrap_content"... 申请注册 Google 谷歌gmail邮箱账号,验证您的 手机号 码时遇到:此电话号码无法用于进行验证怎么办?因为遇到此电话号码无法用于进行验证问题,将无法继续完成谷歌gmail邮箱 google 账号注册。如此处遇到提示:此电话号码无法用于进行验证、此电话号码已多次用于验证、此电话号码已用过太多次等等,无法继续完成 手机号 码验证的问题。3、在 google 谷歌账号注册验证您的 手机号 码输入框内,输入+86和你的 手机号 码,并点击下一步;2、在 google 谷歌帐号创建页面,输入姓名、用户名、 登录 密码等 信息 ,并点击下一步; 注册申请 google 谷歌gmail邮箱帐号,在验证您的 手机号 码时遇到问题提示:此电话号码已用过太多次。无法完成 手机号 码验证,就无法成功注册 google 谷歌gmail邮箱帐号;3、在注册 google 帐号验证您的 手机号 码,输入+86和你的 手机号 码,并点击下一步继续即可获得短信验证码输入后点击验证;4、输入验证码完成 手机号 码验证,同意协议即可申请注册 google 谷歌gmail邮箱帐号;2、输入创建您的 Google 帐号资料,并点击下一步继续;1、打开谷歌帐号 登录 入口,并点击创建帐号; SIM卡存储的数据可分为四类: 第一类是固定存放的数据。这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI)、鉴权密钥(KI)、鉴权和加密算法等等。 第二类是暂时存放的有关网络的数据。如位置区域识别码(LAI)、移动用户暂时识别码(TMSI)、禁止接入的公共电话网代码等。 第三类是相关的业务代码,如个人识别码(PIN)、解锁码(PUK)、计费费率等。 第四类是电.