Uwierzytelniaj za pomocą Firebase za pomocą kont opartych na haśle w C++

Aby umożliwić użytkownikom uwierzytelnianie przy użyciu: Firebase Authentication, Firebase za pomocą ich adresów e-mail i haseł oraz do zarządzania kont opartych na haśle.

Zanim zaczniesz

  1. Dodaj Firebase do projektu C++.
  2. Jeśli Twoja aplikacja nie jest jeszcze połączona z projektem Firebase, zrób to na stronie konsolę Firebase.
  3. Włącz logowanie za pomocą adresu e-mail/hasła:
    1. W konsoli Firebase otwórz sekcję Autoryzacja.
    2. Na karcie Metoda logowania włącz logowanie Adres e-mail/hasło. i kliknij Zapisz.

Dostęp do zajęć firebase::auth::Auth

Klasa Auth jest bramą dla wszystkich wywołań interfejsu API.
  1. Dodaj pliki nagłówka Auth i App:
    #include "firebase/app.h"
    #include "firebase/auth.h"
  2. W kodzie inicjowania utwórz klasę firebase::App.
    #if defined(__ANDROID__)
      firebase::App* app =
          firebase::App::Create(firebase::AppOptions(), my_jni_env, my_activity);
    #else
      firebase::App* app = firebase::App::Create(firebase::AppOptions());
    #endif  // defined(__ANDROID__)
  3. Uzyskaj dostęp do zajęć firebase::auth::Auth dla firebase::App. Wartości AppAuth są ze sobą powiązane jeden do jednego.
    firebase::auth::Auth* auth = firebase::auth::Auth::GetAuth(app);

Tworzenie konta opartego na haśle

Aby utworzyć nowe konto użytkownika z hasłem, wykonaj następujące czynności w sekcji kod logowania do aplikacji:

  1. Gdy nowy użytkownik zarejestruje się za pomocą formularza rejestracji w aplikacji, wpisz wszystkie nowe weryfikacji konta wymaganych przez aplikację, takich jak sprawdzenie, czy nowe hasło do konta jest wpisane poprawnie i jest zgodne z Twoją złożonością .
  2. Utwórz nowe konto, przekazując jego adres e-mail i hasło. do Auth::CreateUserWithEmailAndPassword:
    firebase::Future<firebase::auth::AuthResult> result =
        auth->CreateUserWithEmailAndPassword(email, password);
  3. Jeśli Twój program ma pętlę aktualizacji, która działa regularnie (np. przy 30 lub 60 sekundzie) razy na sekundę), możesz sprawdzić wyniki raz na każdą aktualizację, Auth::CreateUserWithEmailAndPasswordLastResult:
    firebase::Future<firebase::auth::AuthResult> result =
        auth->CreateUserWithEmailAndPasswordLastResult();
    if (result.status() == firebase::kFutureStatusComplete) {
      if (result.error() == firebase::auth::kAuthErrorNone) {
        const firebase::auth::AuthResult auth_result = *result.result();
        printf("Create user succeeded for email %s\n",
               auth_result.user.email().c_str());
      } else {
        printf("Created user failed with error '%s'\n", result.error_message());
      }
    }
    Jeśli Twój program jest sterowany zdarzeniami, możesz zarejestrować wywołanie zwrotne w obiekcie Future.