Pierwsze kroki ze Zdalnej konfiguracji Firebase


Za pomocą Zdalnej konfiguracji Firebase możesz definiować parametry w swojej aplikacji oraz ich wartości w chmurze, co pozwala na modyfikowanie wyglądu zachowanie aplikacji bez jej rozpowszechniania. Z tego przewodnika dowiesz się, Google Analytics i udostępniamy w nich przykładowy kod, dostępnych do sklonowania lub pobrania z firebase/quickstart-js repozytorium GitHub.

Krok 1. Dodaj i zainicjuj pakiet SDK Zdalnej konfiguracji

  1. zainstaluj pakiet SDK Firebase JS i zainicjuj Firebase.

  2. Dodaj pakiet JS SDK Zdalnej konfiguracji i zainicjuj Zdalną konfigurację:

Web

.

import { initializeApp } from "firebase/app";
import { getRemoteConfig } from "firebase/remote-config";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);


// Initialize Remote Config and get a reference to the service
const remoteConfig = getRemoteConfig(app);

Web

.

import firebase from "firebase/compat/app";
import "firebase/compat/remote-config";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);


// Initialize Remote Config and get a reference to the service
const remoteConfig = firebase.remoteConfig();

Ten obiekt służy do przechowywania domyślnych wartości parametrów w aplikacji; pobieranie zostało zaktualizowane wartości parametrów z backendu Zdalnej konfiguracji i kontrolować ich pobieranie. wartości są udostępniane aplikacji.

Krok 2. Ustaw minimalny interwał pobierania

Podczas programowania zalecamy ustawienie stosunkowo niskiej minimalnej wartości pobierania interwału. Zobacz sekcję Ograniczanie wykorzystania dla opcji znajdziesz więcej informacji.

Web

remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

Web

remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

Krok 3. Ustaw domyślne wartości parametrów w aplikacji

Wartości domyślne parametrów w aplikacji możesz ustawić w Zdalnej konfiguracji. dzięki czemu aplikacja działa zgodnie z oczekiwaniami, jeszcze zanim nawiąże połączenie w backendzie Zdalnej konfiguracji, tak by wartości domyślne były dostępne, w backendzie nie są ustawione żadne ustawienia.

Web

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Web

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Jeśli masz już skonfigurowane wartości parametrów backendu Zdalnej konfiguracji, możesz pobrać wygenerowany plik JSON, który zawiera wszystkie wartości domyślne uwzględnij go w pakiecie aplikacji:

REST

curl --compressed -D headers -H "Authorization: Bearer token" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig:downloadDefaults?format=JSON -o remote_config_defaults.json

Konsola Firebase

  1. Na karcie Parametry otwórz Menu i wybierz Pobierz wartości domyślne.
  2. Gdy pojawi się prośba, włącz plik.json dla witryn, a następnie kliknij Pobierz plik.

Poniższe przykłady pokazują 2 różne sposoby importowania i ustawiania domyślnych wartości w aplikacji. W pierwszym przykładzie użyto parametru fetch, który utworzy Żądanie HTTP do pliku domyślnego w pakiecie aplikacji:


  const rcDefaultsFile = await fetch('remote_config_defaults.json');
  const rcDefaultsJson = await rcDefaultsFile.json();
  remoteConfig.defaultConfig = rcDefaultsJson;
  

W następnym przykładzie użyto metody require, która kompiluje wartości w Twojej aplikacji. w momencie kompilacji:

  let rcDefaults = require('./remote_config_defaults.json');
  remoteConfig.defaultConfig = rcDefaults;

Krok 4. Pobierz wartości parametrów do wykorzystania w aplikacji

Teraz możesz pobierać wartości parametrów z obiektu Zdalnej konfiguracji. Jeśli później ustawiają wartości w backendzie, pobierają je, a następnie aktywują, dla Twojej aplikacji.Aby je uzyskać, wywołaj metodę getValue(), zapewniając jako argumentu.

Web

import { getValue } from "firebase/remote-config";

const val = getValue(remoteConfig, "welcome_messsage");

Web

const val = remoteConfig.getValue("welcome_messsage");

Krok 5. Ustaw wartości parametrów

Za pomocą konsoli Firebase lub interfejsy API backendu Zdalnej konfiguracji, możesz utworzyć nowe domyślne wartości po stronie serwera, które zastąpią wartości w aplikacji zgodnie z logiką warunkową lub kierowaniem na użytkowników. Ta sekcja przeprowadzi Cię przez proces tworzenia tych wartości w konsoli Firebase.

  1. W konsoli Firebase otwórz projekt.
  2. Aby ją wyświetlić, wybierz z menu Zdalna konfiguracja. panelu.
  3. Zdefiniuj parametry o takich samych nazwach jak parametry zdefiniowane w sekcji do aplikacji. Dla każdego parametru możesz ustawić wartość domyślną (która będzie zastąpić domyślną wartość w aplikacji), a także ustawić wartości warunkowych. Więcej informacji: Parametry i warunki Zdalnej konfiguracji.

Krok 6. Pobierz i aktywuj wartości

  1. Aby pobrać wartości parametrów z backendu Zdalnej konfiguracji, wywołaj funkcję fetchConfig() . Wszystkie wartości ustawione w backendzie są pobierane i w pamięci podręcznej obiektu Zdalnej konfiguracji.
  2. Aby udostępnić aplikacji pobrane wartości parametrów, wywołaj metodę activate() .

Jeśli chcesz pobrać i aktywować wartości w jednym wywołaniu, użyj funkcji fetchAndActivate() Jak w tym przykładzie:

Web

import { fetchAndActivate } from "firebase/remote-config";

fetchAndActivate(remoteConfig)
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Web

remoteConfig.fetchAndActivate()
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Te zaktualizowane wartości parametrów wpływają na działanie i wygląd Twojej aplikacji, musisz aktywować pobrane wartości w takim czasie, aby zapewnić dla użytkownika, np. gdy następnym razem otworzy . Zapoznaj się ze strategiami wczytywania Zdalnej konfiguracji. .

Ograniczenia

Jeśli aplikacja pobierze zbyt wiele razy w krótkim czasie, wywołania pobierania mogą być przyspieszona. W takich przypadkach pakiet SDK zgłasza błąd FETCH_THROTTLE. Zalecamy wychwycenie tego błędu i ponowienie próby w trybie wykładniczego ponowienia dłuższe oczekiwanie między kolejnymi żądaniami pobierania.

Podczas tworzenia aplikacji warto często odświeżać pamięć podręczną (wiele razy na godzinę), co pozwala na szybkie iteracje w trakcie opracowywania i testowania . Aby dostosować ją do szybkiej iteracji projektu z udziałem wielu programistów, może tymczasowo dodać właściwość z krótkim minimalnym odstępem czasu pobierania (Settings.minimumFetchIntervalMillis) w aplikacji.

Domyślny i zalecany interwał pobierania w środowisku produkcyjnym dla Zdalnej konfiguracji to 12 godzin, co oznacza, że konfiguracje są pobierane z backendu nie częściej niż raz w ciągu 12 godzin niezależnie od tego, ile zostało w rzeczywistości wywołań pobierania. Mówiąc konkretnie, minimalny odstęp czasu pobierania jest określany w następującej kolejności:

  1. Parametr w polu Settings.minimumFetchIntervalMillis.
  2. Wartość domyślna to 12 godzin.
.

Dalsze kroki

Zapoznaj się ze Zdalną konfiguracją, jeśli jeszcze jej nie znasz. przypadkach użycia i przyjrzyj się niektórym dokumentację kluczowych koncepcji i zaawansowanych strategii, w tym: