答案是肯定的。 GoogleApiClient.connect()
有被称为 - 否则我们会得到一个IllegalStateException
:
java.lang.IllegalStateException:GoogleApiClient尚未连接。
所以你这是怎么登出:
mGoogleClient = new GoogleApiClient.Builder(getContext())
.addConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() {
@Override
public void onConnected(@Nullable Bundle bundle) {
//SIGN OUT HERE
Auth.GoogleSignInApi.signOut(mGoogleClient).setResultCallback(
new ResultCallback<Status>() {
@Override
public void onResult(Status status) {/*ignored*/}
});
}
@Override
public void onConnectionSuspended(int i) {/*ignored*/}
})
.addOnConnectionFailedListener(new GoogleApiClient.OnConnectionFailedListener() {
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
/*ignored*/
}
})
.addApi(Auth.GOOGLE_SIGN_IN_API) //IMPORTANT!!!
.build();
mGoogleClient.connect();
所以我想他们有这部分的示例代码丢失。