gpt4 book ai didi

android - 从 AccountManager 获取基本的谷歌授权 token

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:33:38 31 4
gpt4 key购买 nike

我想从 AccountManager 获取一个 Google Authtoken,我可以将其发送到我的网络服务(不托管在 App Engine 上)以验证用户(我只需要电子邮件地址,最后需要他的名字,如果不需要许可的话) ).

“getAuthToken”方法的“authTokenType”参数必须使用什么?

我必须使用哪个 google Api 来获取用户电子邮件?

最佳答案

这可以使用 OpenID Connect 来实现,但它是实验性的,因此 future 可能会更改细节。如果您获得“https://www.googleapis.com/auth/userinfo.email”或“https://www.googleapis.com/auth/userinfo.profile”范围的 OAuth token ,您可以使用它来获取来自 https://www.googleapis.com/oauth2/v1/userinfo 的用户信息(包括电子邮件)。当然这需要用户授权。

从理论上讲,您应该能够使用“oauth2:https://www.googleapis.com/auth/userinfo.profile”作为 token 类型从 AcccountManager 获取 token ,但事实并非如此似乎无法在我的设备上运行(Galaxy Nexus 库存为 4.0.4)。由于通过 AccountManager 获取 token 不起作用(至少目前如此),唯一可靠的方法是使用 WebView 并通过浏览器获取一个,如下所述:https://developers.google.com/accounts/docs/MobileApps

这里有一个演示网络应用程序可以执行此操作:https://oauthssodemo.appspot.com

(后期)更新:Google Play 服务已经发布,这是获取 OAuth token 的首选方式。它应该适用于所有 Android 2.2 及更高版本的设备。获取个人资料 token 确实适用于它,事实上他们在演示应用程序中使用它

关于android - 从 AccountManager 获取基本的谷歌授权 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10565759/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com