Java 退出Google Fit

Java 退出Google Fit,java,android-studio,google-fit,Java,Android Studio,Google Fit,我已尝试使用,但建议的方法不起任何作用: Fitness.getConfigClient(this, GoogleSignIn.getLastSignedInAccount(this)).disableFit() 我如何通过谷歌认证: if (!GoogleSignIn.hasPermissions(GoogleSignIn.getLastSignedInAccount(this), fitnessOptions)) { GoogleSignIn.requestPermissi

我已尝试使用,但建议的方法不起任何作用:

Fitness.getConfigClient(this, GoogleSignIn.getLastSignedInAccount(this)).disableFit()
我如何通过谷歌认证:

if (!GoogleSignIn.hasPermissions(GoogleSignIn.getLastSignedInAccount(this), fitnessOptions)) {
        GoogleSignIn.requestPermissions(this, REQUEST_OAUTH_REQUEST_CODE,
                GoogleSignIn.getLastSignedInAccount(this),
                fitnessOptions);
    } else {
        subscribe();
    }



@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode == Activity.RESULT_OK) {
            if (requestCode == REQUEST_OAUTH_REQUEST_CODE) {
                subscribe();
            }
        }
    }



public void subscribe() {
        
        Fitness.getRecordingClient(this, GoogleSignIn.getLastSignedInAccount(this))
                .subscribe(DataType.TYPE_STEP_COUNT_CUMULATIVE)
                .addOnCompleteListener(
                        new OnCompleteListener<Void>() {
                            @Override
                            public void onComplete(@NonNull Task<Void> task) {
                                if (task.isSuccessful()) {
                                    Log.i(TAG, "Successfully subscribed!");
                                } else {
                                    Log.w(TAG, "There was a problem subscribing.", task.getException());
                                }
                            }
                        });
    }
if(!GoogleSignIn.hasPermissions(GoogleSignIn.GetLastSignedAccount(this),fitnessOptions)){
GoogleSignIn.requestPermissions(这是请求代码,
GoogleSignIn.GetLastSignedAccount(此),
适合性(可选);
}否则{
订阅();
}
@凌驾
受保护的void onActivityResult(int请求代码、int结果代码、意图数据){
if(resultCode==Activity.RESULT\u确定){
if(requestCode==请求\u OAUTH\u请求\u代码){
订阅();
}
}
}
公开无效订阅(){
Fitness.getRecordingClient(这个,GoogleSignIn.GetLastSignedAccount(这个))
.subscribe(数据类型.类型\步骤\计数\累积)
.addOnCompleteListener(
新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
Log.i(标记“已成功订阅!”);
}否则{
Log.w(标记“订阅时出现问题”,task.getException());
}
}
});
}

我需要能够获取上次登录的google帐户,并为用户提供注销其google帐户的选项。

要断开google帐户与应用程序的连接,您应该使用GoogleSignIn的注销方法,该方法将保留授予的权限,或者您可以使用revokeAccess方法进行注销和注销撤消授予的权限:

val options = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
    .addExtension(getFitnessOptions())
    .requestProfile()
    .build()

GoogleSignIn.getClient(this, options).signOut() // or GoogleSignIn.getClient(this, options).revokeAccess()