Как использовать настройки кода действия с проверкой электронной почты Firebase - PullRequest
0 голосов
/ 15 сентября 2018

Мои письма с подтверждением Firebase работают нормально. Однако, как только я пытаюсь добавить actionCodeSettings, они этого не делают. Возможно, проблема заключается в URL-адресе, который я установил, учитывая, что я не знаю, что я должен на самом деле установить для него.

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

Если щелкнуть где-либо еще, то не должно произойти ничего, кроме обычного сообщения о том, что учетная запись подтверждена.

Как мне использовать actionCodeSettings, чтобы получить такое поведение?

                        String url = "com.app/verify?uid=" + user.getUid();
                        ActionCodeSettings actionCodeSettings = ActionCodeSettings.newBuilder()
                                .setUrl(url)
                                .setAndroidPackageName("com.app", false, null)
                                .build();



                        user.sendEmailVerification(actionCodeSettings) 
                                .addOnCompleteListener(new OnCompleteListener<Void>() {
                                    @Override
                                    public void onComplete(@NonNull Task<Void> task) {
                                        if (task.isSuccessful()) {
                                            Log.d(TAG, "Email sent.");
                                            Toast.makeText(MainActivity.this, "Registration successful. Please verify your account by clicking on the link sent to your email address.",
                                                    Toast.LENGTH_LONG).show();
                                        }else {

                                            Log.d(TAG, "Email not sent");
                                            Toast.makeText(MainActivity.this, "Registration successful. However, verification email could not be send.",
                                                    Toast.LENGTH_LONG).show();
                                        }
                                    }
                                });

1 Ответ

0 голосов
/ 17 сентября 2018

Вы должны использовать фактический URL вместо com.app/verify?uid.Вы можете использовать хостинг Firebase для этого.Он уже должен быть настроен для вашего проекта.Это используется в качестве резервного URL-адреса в случае, если пользователь открывает приложение на другом устройстве, где мобильное приложение недоступно.Также вам нужно установить canHandleCodeInApp в true в вашем ActionCodeSettings, поэтому, когда пользователь щелкает ссылку, которую он открывает непосредственно в вашем мобильном приложении, вместо того, чтобы обрабатывать ссылку на веб-странице Firebase Auth, предусмотренной по умолчанию для вашего проекта, с кнопкой продолжения назадв ваше приложение.

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