我正在努力将Google+登录集成到一个应用程序,我现在主要工作。这里的操作说明:谷歌Plus GoogleApiClient连接()没有帐户选择对话框
https://developers.google.com/+/mobile/android/sign-in
我可以添加一个“在与谷歌”按钮,整合来自播放服务GoogleApiClient
,并允许用户登录到谷歌帐户,他们的选择。
但是,为了符合Google的服务条款,我还想提供一种方式(在不同的活动中)让他们完全断开他们的Google+帐户与应用的关联。根据谷歌的文档在这里:
这是调用Plus.AccountApi.revokeAccessAndDisconnect()
与连接GoogleApiClient
一个简单的事情。问题是,这需要我首先连接GoogleApiClient
。
获取此类对象的过程在第一个链接中列出:使用GoogleApiClient.Builder
构建客户端对象,在其上调用connect()
,并使用适当的回调来检测连接成功或失败。但是,如果用户在其手机上拥有多个Google帐户,那么connect()
会导致立即失败,要求我调用解决方案意图,这将弹出一个对话框,要求他们选择要使用的帐户。
但这不适用于这种情况,因为他们已经登录到Google+,所以我应该已经知道要使用哪个帐户。请记住,在这一点上,我需要做的就是创建一个GoogleApiClient
对象,它登录到他们之前登录的帐户,然后我可以将它传递给Plus.AccountApi.revokeAccessAndDisconnect()
。但我不知道该怎么做。
我已经通过文件看起来和搜查的话,我能想到的解释这个问题的每一个组合,但到目前为止,我没有发现任何。有没有办法在所有实例GoogleApiClient
与特定账户,而不需要用户从现有帐户的列表中进行选择?或者,如果没有,是否有一些信息保存到首选项中,我可以访问它们以获取令牌给他们已经在我的应用中授权的帐户?
非常感谢我正在寻找这个方法好几个小时! – rekire 2015-07-29 07:59:20
拯救了我的一天! – ssk 2016-07-28 22:46:48