Google SignIn работает, но приветствие не появляется - PullRequest
0 голосов
/ 03 февраля 2020

Я устанавливаю Google SDK на android studio. Что-то странное продолжает происходить .. Кажется, что Signin работал, но приветственное всплывающее окно (как на фотографии ниже) не появляется.

enter image description here

Вот мой код .

AppActivity. java

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.setEnableVirtualButton(false);
        super.onCreate(savedInstanceState);

        appActivity = this;

        GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestEmail()
                .build();

        mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
    }


@Override
protected void onStart() {
        super.onStart();

        signIn();
    }


private void signIn() {
        Log.i(LOG_TAG, "call signIn()");
        Intent signInIntent = mGoogleSignInClient.getSignInIntent();
        startActivityForResult(signInIntent, 1);
    }


 @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        // Result returned from launching the Intent from GoogleSignInClient.getSignInIntent(...);
        if (requestCode == 1) {
            // The Task returned from this call is always completed, no need to attach
            // a listener.
            Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);
            handleSignInResult(task);
        }
    }


private void handleSignInResult(Task<GoogleSignInAccount> completedTask) {
        try {
            GoogleSignInAccount account = completedTask.getResult(ApiException.class);

            // Signed in successfully
            Log.i(LOG_TAG, "signInResult: success on " + account.getEmail());
            Log.i(LOG_TAG, "signInResult: success on " + account.getAccount());

        } catch (ApiException e) {
            Log.i(LOG_TAG, "signInResult: failed code=" + e.getStatusCode());
            Log.i(LOG_TAG, e.getMessage());
            for (StackTraceElement element : e.getStackTrace()){
                Log.e(LOG_TAG, element.toString());
            }

            // Signed in failed
        }
    }

При запуске приложения появляется всплывающее окно входа в систему (в котором я могу выбрать учетные записи Google). И затем после выбора одного из них ничего не происходит.

Разве не должно быть приветствия?

В handleSignInResult (),

не выдает никаких исключений. И я могу получить account.getEmail () или account.getAccount () и так далее. Разве это не значит, что подпись прошла успешно? Пожалуйста, помогите мне, я понятия не имею, что здесь происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...