2013-03-20 37 views
3

我試圖使用由谷歌所產生的意圖Play服務選擇谷歌帳戶關閉AccountPicker.newChooseAccountIntent,對話框當帳戶中選定

private void showGoogleAccountPicker() { 
    Intent googlePicker = AccountPicker.newChooseAccountIntent(null, null, 
     new String[] { GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE }, true, null, null, null, null); 
    startActivityForResult(googlePicker, PICK_ACCOUNT_REQUEST); 
    } 

    @Override 
    protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) { 
    if (requestCode == PICK_ACCOUNT_REQUEST && resultCode == RESULT_OK) { 
     String accountName = data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME); 
     Log.d(TAG, "Account Name=" + accountName); 
    } 
    } 

對話框顯示我的谷歌帳戶,並選擇創建一個新的一。

enter image description here

如果讓我選擇,我正確地重定向到帳戶創建嚮導中的「添加帳戶」選項,但如果我選擇現有帳戶,並單擊「確定」,對話框關閉,但它永遠不會返回活動

Logcat只打印這一行。我認爲它沒有任何事情要做。

W/IInputConnectionWrapper(23576): showStatusIcon on inactive InputConnection 

來源

http://gmariotti.blogspot.com.es/2013/03/snippet-google-picker-account.html http://developer.android.com/reference/com/google/android/gms/common/AccountPicker.html

+0

你是什麼意思「永遠不會返回到活動」浪費?難道'onActivityResult'得到根本叫什麼名字? – ianhanniballake 2013-03-20 17:04:58

+0

這正是我的意思。我已經試過調試和日誌。 D,它永遠不會進入那裏 – Maragues 2013-03-20 19:41:49

+0

感謝您的關注ian,但像往常一樣,這是一個愚蠢的錯誤,花了我幾個小時才找到。 – Maragues 2013-03-21 10:12:58

回答

8

原來我的活動是不是在返回堆棧,因爲我明確要求它在清單

<activity 
      android:name=".ui.LoginActivity" 
      android:label="@string/app_name" 
      android:noHistory="true" 

所以對話框找不到任何人返回結果。

什麼時間:(

+2

我也有這樣的問題,原因是android:launchMode =「singleInstance」in清單 – 2013-07-30 02:10:05

相關問題