我正在努力將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