Java Android的GoogleSignInClient.signOut()不注销用户
1) 在myHomeActivity屏幕中,将有一个用于用户注销的按钮。此按钮导致注销()登录活动的方法Java Android的GoogleSignInClient.signOut()不注销用户,java,android,google-api,Java,Android,Google Api,1) 在myHomeActivity屏幕中,将有一个用于用户注销的按钮。此按钮导致注销()登录活动的方法 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_home); //adding an onclicklistener to signOut butto
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
//adding an onclicklistener to signOut button
findViewById(R.id.sign_out_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LoginActivity loginActivity = new LoginActivity();
loginActivity.signOut();
}
});
}
2) 在我的LoginActivity中,signOut()方法将执行Google提供的
public void signOut() {
mGoogleSignInClient.signOut()
.addOnCompleteListener(this, new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Toast.makeText(getApplicationContext(), "Disconnecting...", Toast.LENGTH_LONG);
Intent i = new Intent(getApplicationContext(), LoginActivity.class);
startActivity(i);
}
});
}
clearDefaultAccountAndReconnect()api将清除以前的登录帐户详细信息。在侦听器中的signout onComplete()方法中尝试使用以下代码段
if (mGoogleApiClient.hasConnectedApi(Auth.GOOGLE_SIGN_IN_API)) {
mGoogleApiClient.clearDefaultAccountAndReconnect();
mGoogleApiClient.stopAutoManage(context);
mGoogleApiClient.disconnect();
}
clearDefaultAccountAndReconnect()api将清除以前的登录帐户详细信息。在侦听器中的signout onComplete()方法中尝试使用以下代码段
if (mGoogleApiClient.hasConnectedApi(Auth.GOOGLE_SIGN_IN_API)) {
mGoogleApiClient.clearDefaultAccountAndReconnect();
mGoogleApiClient.stopAutoManage(context);
mGoogleApiClient.disconnect();
}
谢谢你的回答,但是你说的方法是来自不推荐使用的GoogleAppClient,我使用的是GoogleSignInClient,所以不起作用。谢谢你的回答,但是你说的方法是来自不推荐使用的GoogleAppClient,我使用的是GoogleSignInClient,所以不起作用