Wraz z rozwojem aplikacji nowe wersje mogą wprowadzać istotne zmiany w interfejsach API backendu, usuwać krytyczne luki w zabezpieczeniach lub zastępować wycofane usługi i modele AI. W takich sytuacjach starsze wersje aplikacji mogą przestać działać niezawodnie lub bezpiecznie.
Za pomocą Remote Config możesz dynamicznie kontrolować wymagania dotyczące wersji aplikacji z poziomu chmury. Definiując parametry wersji w Remote Config, możesz wyświetlać użytkownikom prośby o zaktualizowanie aplikacji lub wymagać od nich aktualizacji bez wdrażania niestandardowej infrastruktury serwera ani publikowania aktualizacji awaryjnej.
Wybieranie strategii aktualizacji
Remote Config dostarcza parametry wersji do oceny na urządzeniu klienta, dzięki czemu możesz skonfigurować interfejs aktualizacji aplikacji w ramach jednej z 2 strategii w zależności od wagi zmiany:
- Wymuszona aktualizacja (blokowanie): jeśli starsza wersja aplikacji jest niezgodna z backendem lub stwarza zagrożenie dla bezpieczeństwa, możesz zablokować dostęp do aplikacji do czasu, aż użytkownik ją zaktualizuje. Jeśli zainstalowana wersja jest starsza niż wymagane minimum, możesz skonfigurować aplikację tak, aby wyświetlała okno dialogowe, którego nie można zamknąć, i które kieruje użytkownika do sklepu z aplikacjami na platformie w celu zainstalowania najnowszej wersji.
- Elastyczna (opcjonalna) aktualizacja: jeśli aktualizacja wprowadza nowe funkcje, poprawia wydajność lub usuwa drobne błędy, możesz skonfigurować aplikację tak, aby wyświetlała baner lub prośbę, którą użytkownicy mogą zamknąć. Zachęci ich to do aktualizacji w dogodnym dla nich momencie, a jednocześnie umożliwi dalsze korzystanie z aplikacji.
Krok 1. Skonfiguruj parametry w konsoli Firebase
Aby zarządzać wersjami aplikacji, zdefiniuj parametry w szablonie Remote Config:
- W konsoli Firebase otwórz stronę DevOps i zaangażowanie > Zdalna konfiguracja > Parametry.
- Kliknij Dodaj parametr (lub Utwórz konfigurację, jeśli to Twój pierwszy parametr).
- Zdefiniuj te parametry:
minimum_version: ciąg znaków reprezentujący najwcześniejszą obsługiwaną wersję aplikacji (np."2.4.0"). Aplikacje działające w wersji wcześniejszej niż ta wartość są blokowane do czasu aktualizacji.latest_version(opcjonalnie): ciąg znaków reprezentujący najnowszą dostępną wersję aplikacji (np."2.5.1"). Aplikacje działające w wersji międzyminimum_versionalatest_versionmogą wyświetlać opcjonalną rekomendację aktualizacji.update_url(opcjonalnie): adres URL sklepu, w którym użytkownicy mogą pobrać aktualizację (np. informacje o aplikacji w Sklepie Google Play lub Apple App Store).
- Opcjonalnie: dodaj warunki dotyczące platformy:
- Aplikacje na Androida i iOS często mają różne wersje i adresy URL w sklepie, dlatego możesz dodać wartości warunkowe dla każdej platformy w ramach tego samego parametru.
- Kliknij Dodaj wartość warunku > Utwórz warunek. Nazwij warunek (np.
Android ApplubiOS App), wybierz Aplikacja jako regułę kierowania i wybierz aplikację. - Ustaw odpowiedni ciąg wersji dla każdego warunku platformy i zachowaj wartość domyślną jako rezerwową.
- Aby zastosować szablon, kliknij Zapisz, a potem Opublikuj zmiany.
Krok 2. Wdróż sprawdzanie wersji po stronie klienta
Na kliencie sprawdź wersję aplikacji instalowanej w porównaniu z parametrami Remote Config podczas uruchamiania:
- Ustaw wartości domyślne w aplikacji: zawsze podawaj bezpieczne wartości domyślne w pakiecie aplikacji (np. ustaw
minimum_versionna początkową wersję aplikacji, np."1.0.0"). Ta konfiguracja rezerwowa zapewnia, że aplikacja będzie działać normalnie, jeśli urządzenie jest offline lub początkowe żądanie pobrania się nie powiedzie. Wskazówki dotyczące poszczególnych platform znajdziesz w artykule Pobieranie domyślnych ustawień szablonu Remote Config. - Pobierz i aktywuj Remote Config: pobieraj i aktywuj najnowsze wartości szablonu po uruchomieniu aplikacji.
Porównywanie wersji: pobierz aktywne ciągi znaków
minimum_versionilatest_versioni porównaj je z obecnie zainstalowaną wersją aplikacji.Podejmowanie działań na podstawie porównania wersji:
- Wymuś wymaganą aktualizację: jeśli
current_versionjest wcześniejsza niżminimum_version, wyświetl pełnoekranowy alert modalny, którego nie można zamknąć. Wyłącz nawigację do pozostałej części aplikacji i udostępnij przycisk, który otwieraupdate_urlw sklepie z aplikacjami na platformie. - Monit o opcjonalną aktualizację: jeśli
current_versionjest wcześniejsza niżlatest_version, wyświetl okno dialogowe lub powiadomienie z możliwością zamknięcia, informujące użytkowników o dostępności aktualizacji, z opcjami Zaktualizuj teraz lub Później. - Zezwól na dostęp: w przeciwnym razie zezwól użytkownikowi na przejście do aplikacji.
- Wymuś wymaganą aktualizację: jeśli
Sprawdzone metody
- Dodaj odbiornik w czasie rzeczywistym: gdy aktualizacje wersji są wymagane z powodu problemów z bezpieczeństwem lub poważnego pogorszenia UX, dodanie do aplikacji odbiornika Remote Config w czasie rzeczywistym może pomóc w zapewnieniu, że zmiany wymagań dotyczących wersji zaczną obowiązywać natychmiast na aktywnych urządzeniach bez czekania na następne zaplanowane pobieranie lub ponowne uruchomienie aplikacji.
- Testowanie w ograniczonej grupie testerów: zanim zwiększysz
minimum_versiondla wszystkich użytkowników wersji produkcyjnej, przetestuj warunek w ograniczonej grupie testerów lub kieruj reklamy na testerów wewnętrznych za pomocą niestandardowych właściwości użytkownika. Ten test sprawdza, czy blokujący modal wyświetla się prawidłowo i czy linki do sklepu działają poprawnie. - Korzystaj z interfejsów API aktualizacji w aplikacji na platformie: na Androidzie rozważ zintegrowanie aktualizacji w aplikacji w Google Play z Remote Config sprawdzaniem, aby umożliwić użytkownikom pobieranie i instalowanie aktualizacji bez opuszczania aplikacji.
- Zapoznaj się z listami kontrolnymi dotyczącymi wersji produkcyjnej: przeczytaj listę kontrolną dotyczącą wprowadzenia Firebase i listę kontrolną dotyczącą wersji produkcyjnej AI Logic, aby uzyskać więcej wskazówek na temat przygotowania aplikacji i funkcji AI do wersji produkcyjnej.