Страница Google Fit OAuth на Android застряла при загрузке знака после выбора учетной записи

Я разрабатываю с помощью google fit api на Android. Я настроил свой проект, следуя руководству из документа Google. Но когда я тестирую аутентификацию на реальном устройстве, после того, как я выберу свою учетную запись Google, как изображение, она покажет белую страницу со знаком загрузки. Он просто загружается навсегда и без ошибок.

Вот что я сделал в своем проекте:

// AndroidManife
// because target API level 28
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
// google-services.json
"oauth_client": [
        {
          "client_id": "xxx-xxx.apps.googleusercontent.com",
          "client_type": 1,
          "android_info": {
            "package_name": "xxx.xxx.xxx",
            "certificate_hash": "xxxxhash"
          }
        },
        {
          "client_id": "xxx-xxx.apps.googleusercontent.com",
          "client_type": 3
        }
      ]
// my auth activity, sample code from google doc
FitnessOptions fitnessOptions = FitnessOptions.builder()
      .addDataType(DataType.TYPE_STEP_COUNT_DELTA, FitnessOptions.ACCESS_READ)
      .addDataType(DataType.AGGREGATE_STEP_COUNT_DELTA, FitnessOptions.ACCESS_READ)
      .build();

    GoogleSignInAccount account = GoogleSignIn.getAccountForExtension(this, fitnessOptions);

    if (!GoogleSignIn.hasPermissions(account, fitnessOptions)) {
      GoogleSignIn.requestPermissions(
        this, // your activity
        GOOGLE_FIT_PERMISSIONS_REQUEST_CODE, // e.g. 1
        account,
        fitnessOptions);
    }

Идентификатор клиента OAuth 2.0 можно использовать в консоли Google API. Я проверяю, что хранилище ключей SHA-1 правильно.

Я также поместил свое хранилище ключей SHA-1 в настройки проекта Firebase.

Вход в Google открывается в Firebase Authentication -> Sign-in Method.

Что я упустил? Что я должен делать? Пожалуйста, помогите мне. Огромное спасибо.

3 ответа

если Ваше приложение помечено как «ВНЕШНЕЕ» на «экране согласия OAuth» — вам необходимо добавить пользователей-тестеров

Я понял это. Это потому, что я не редактировал имя своего приложения в консоли Google API -> экран согласия OAuth.

Для меня проблема заключалась в том, что мой проект был отмечен как внешний на экране согласия oAuth. В этом случае вам необходимо добавить тестового пользователя, чтобы продолжить использование API Google Fit в приложении.

Другие вопросы по тегам