2016-11-01 26 views
1

私のアプリケーションに統合されているGoogleアカウントからログアウトします。あなたは、私が活動中でそれを行う必要があるが、ここで私は、入力としてfragmentActivityを必要とenableAutoManage問題を抱えている見ることができるように私はこの機能GoogleApiClientのenableAutoManage()はフラグメントアクティビティが必要ですが、アクティビティがあります

public void logoutFromGooglePlus(Activity a) { 
     GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
       .requestEmail() 
       .requestProfile() 
       .build(); 
     GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(a.getBaseContext()) 
       .enableAutoManage(a /* FragmentActivity */, this /* OnConnectionFailedListener */) 
       .addApi(Auth.GOOGLE_SIGN_IN_API) 
       .build(); 
     mGoogleApiClient.connect(); 
     if (mGoogleApiClient.isConnected()) { 
      Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(
        new ResultCallback<Status>() { 
         @Override 
         public void onResult(Status status) { 


         } 
        }); 
     } else { 
      mGoogleApiClient.connect(); // It can send user to onConnected(), call logout again from there 
     } 
    } 

を持っています。しかし、私には活動があります。 fragmentActivityとして簡単にアクティビティをキャストすることはできますか?それを行うには他の方法がありますか? ありがとう

+0

はい、現在のすべてのアクティビティタイプを渡すことができます。 – james

+0

@jamesしかし、それは私に断片的な活動が必要であるというエラーを与えます。私はちょうど私の活動をキャストし、それは働くでしょうか? –

+0

あなたのアクティビティが実際にFragmentActivityである場合にのみ動作します。 –

答えて

1

私はあなたと同じ問題に遭遇しましたが、アクティビティからAppCompatActivityに変更したときに動作します。

希望します。

関連する問題