1

我試圖從Google Play服務初始化歷史記錄API。現在,從我們更新我們的應用程序以來,.useDefaultAccount()方法無法正常工作,連接結果失敗。這將導致登錄提示出現在我們的應用中,用戶需要選擇他們的帳戶。我們想阻止這一點。有沒有辦法做到這一點?.useDefaultAccount()for GoogleApiClient無法正常工作

我們如何使客戶端對象並連接(一個AsyncTask內):

GoogleApiClient apiClient = new GoogleApiClient.Builder(context) 
        .addApi(Fitness.HISTORY_API) 
        .useDefaultAccount() 
        .build(); 
      ConnectionResult connectionResult = apiClient.blockingConnect(); 

      if (!connectionResult.isSuccess()) { 
       if (connectionResult.hasResolution() && context instanceof Activity) { 
        try { 
         connectionResult.startResolutionForResult((Activity) context, 1); 
        } catch (IntentSender.SendIntentException e) { 
         // Utter Failure 
        } 
       } 
      } 
      return null; 

回答

0

的谷歌API客戶端應該是活動的built on the onCreate方法,而不是裏面的AsyncTask。嘗試將代碼塊移動到適當的類。這可能是你爲什麼得到SendIntentException的原因。

0

確保您在onActivityResult()中正確處理帳戶選擇結果。如果您還沒有連接到GoogleApiClient,那麼對話框將繼續顯示。