2016-11-01 4 views
1

내 애플리케이션에 통합 된 Google 계정에서 로그 아웃하고 싶습니다. 당신은 내가 활동을 할 필요가 있지만, 여기에 내가 enableAutoManage이 입력으로 fragmentActivity을 필요로하는 문제가 볼 수 있듯이 나는이 기능을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하지만 IT 부서에서는 조각 작업이 필요하다는 오류를 표시합니다. 나는 단지 내 활동을 캐스팅하고 작동할까요? –

+0

귀하의 활동이 실제로 FragmentActivity 인 경우에만 작동합니다. –

답변

1

나는 당신과 같은 문제를 만났지만 활동에서 AppCompatActivity로 바꿨을 때 작동합니다.

희망이 있습니다.

관련 문제