Как переподключиться к Google Fit в android

Привет, у меня фитнес-приложение. Мне нужно подключить Google Fit и поделиться данными моего фитнес-приложения с Google Fit, и я должен дать возможность отключиться.

Я отключаюсь, используя приведенный ниже код.

Fitness.getConfigClient(this, GoogleSignIn.getLastSignedInAccount(this)).disableFit();

После отключения невозможно переподключиться. Если попытаться загрузить данные в Google Fit, я получаю ошибку ниже.

При чтении данных возникла проблема. com.google.android.gms.common.api.ApiException: 4: пользователь должен войти в систему, чтобы выполнить этот вызов API.


person basavaraj navi    schedule 05.03.2018    source источник


Ответы (2)


попробуйте этот код перед повторным подключением google fit api

  GoogleSignInAccount account = GoogleSignIn.getAccountForExtension(HeartRateCountActivity.this, fitnessOptions);
                    // all fields of account are empty

                    if (!GoogleSignIn.hasPermissions(account, fitnessOptions)) {
                        Log.i(TAG, "Asking for permission");
                        GoogleSignIn.requestPermissions(
                               HeartRateCountActivity. this,
                                001,
                                account,
                                fitnessOptions
                        );
                    } else { // this branch is executed which is weird
                        Log.i(TAG, "Already has permissions");
            //writer your code here
}
person white hills    schedule 12.04.2021

После того, как вы отключились от Google Fit, он аннулирует все предоставленные разрешения OAuth для вашего приложения и удаляет все подписки на записи и регистрации датчиков, сделанные вашим приложением. Вы должны предоставить пользователям параметр «Отключиться от Google Fit» в настройках приложения. Предлагаемое действие - перезапустить само приложение. Исключение произошло при неудачном вызове сервисов Google Play. Вам необходимо повторно подключиться к фитнес-службе.

person abielita    schedule 05.03.2018