2012-10-26 134 views
3

使用新的Google Play服務驗證帳戶時,首先使用AccountPicker來允許用戶選擇一個帳戶。如果用戶之前未通過應用程序的驗證,將會拋出一個UserRecoverableAuthException,這會讓您有意顯示「允許訪問」頁面。您只需要允許一次訪問。但是,出於測試目的,我需要每次都看到「允許訪問」頁面。Google Play服務 - 清除允許的帳戶

那麼,有沒有人知道如何清除Google Play服務的權限?或者每次都會顯示允許訪問頁面的其他方法?

回答

2

在您的Google帳戶設置中,可以設置應用程序專用密碼。註冊兩步驗證,然後您可以創建它們。要暫時撤消權限,您可以刪除或更改密碼:http://support.google.com/accounts/bin/answer.py?hl=en&answer=1070455

否則,請將密碼暫時更改爲您的整個Google帳戶。

不幸的是,我不認爲有一個簡單的編程方式來做到這一點。這似乎是一個嚴重的安全漏洞,用戶/管理員無法撤消Google帳戶對已安裝應用的訪問權限。據我所知,Google正在從服務器獲取身份驗證信息,如果該操作中的某些內容失敗,則會拋出UserRecoverableAuthException。這時候,你通常火了從UserException.getIntent(),這與接觸,如請求的服務器的意圖:

scope:oauth2:https://www.googleapis.com/auth/drive.readonly[ 
    account:<your_account>@gmail.com, 
    scope:oauth2:https://www.googleapis.com/auth/drive.readonly, 
    extrashash:<some_number>] 

現在有沒有文件我已經找到了指示服務器撤銷該身份驗證範圍的要求以上。這可能不可能。但是,您可以嘗試捕獲UserException.getIntent()返回的Intent中的值,並在用戶希望用他們的Google帳戶登錄時使用它創建一個新的Intent。但是,服務器可能意識到應用程序已經過身份驗證,然後在沒有提示的情況下發送給您。