Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Firebase 원격 구성 로딩 전략

Firebase 원격 구성은 서버에서 새 값을 가져와 앱에서 활성화하는 방법과 시기를 원하는 대로 설정하는 기능을 제공하므로 구성을 시각적으로 변경하는 시기를 제어하여 우수한 최종 사용자 환경을 보장할 수 있습니다. 이 가이드에서는 몇 가지 로딩 전략을 살펴보고 앱에 가장 적합한 옵션을 선택하기 위해 주로 고려할 사항을 설명합니다.

전략 1: 로드 시 가져와 활성화

이 전략에서는 앱을 처음 시작할 때 fetchAndActivate()를 호출하여 원격 구성에서 새 값을 가져와 로드가 완료되는 즉시 활성화합니다. 이 간단한 방식은 UI 모양이 크게 변경되지 않는 구성 변경에 적합하지만, 사용자가 사용하는 동안 UI가 눈에 띄게 변경될 수 있는 상황에서는 사용하지 말아야 합니다.

전략 2: 로딩 화면 뒤에서 활성화

전략 1에서 발생할 수 있는 잠재적인 UI 문제를 해결하기 위해 로딩 화면을 사용할 수 있습니다. 앱을 즉시 시작하지 않고 로딩 화면을 표시하고 완료 핸들러에서 fetchAndActivate를 호출합니다. 그런 다음 즉시 콜백 또는 알림을 다시 사용하여 로딩 화면을 닫고 사용자가 앱과 상호작용을 시작할 수 있도록 합니다.

이 전략을 사용하는 경우 로딩 화면에 제한 시간을 추가하는 것이 좋습니다. 우수한 앱 시작 환경을 기대하는 사용자에게 원격 구성의 제한 시간 1분은 너무 길 수도 있습니다.

전략 3: 다음 시작 시 새 값 로드

효과적인 전략으로 새 구성 값을 로드하여 앱의 다음 시작 시 활성화하는 방법이 있습니다. 이 전략에서 앱은 시작 시 가져온 값을 활성화한 후 새 값을 가져오며 새 구성 값을 이미 가져왔더라도 아직 활성화하지 않았다고 가정하고 작동합니다. 이 전략의 작업 순서는 다음과 같습니다.

  1. 시작 시 이전에 가져온 값을 즉시 활성화합니다. 이전 세션에서 서버로부터 다운로드한 모든 값을 적용하며 이 과정이 거의 즉각적으로 이루어집니다.
  2. 사용자가 앱과 상호작용하는 동안 가져오기 간격 최솟값(기본값)에 따라 비동기 호출을 시작하여 새 값을 가져옵니다.
  3. 가져오기 호출의 완료 핸들러 또는 콜백에서는 아무 작업도 하지 않습니다. 앱은 다운로드한 값을 다음에 앱을 시작하여 활성화할 때까지 그대로 유지합니다.

이 전략에서는 사용자 대기 시간이 크게 줄어들지만 사용자가 앱을 다시 실행해야 최신 구성을 볼 수 있습니다. 따라서 비즈니스 및 앱 로직과 이 고려사항 사이에 균형을 맞춰야 합니다.

피해야 할 로딩 전략

위에서 설명한 로딩 전략의 장단점에서 알 수 있듯이 피해야 할 몇 가지 사용 패턴이 있습니다.

  • 방금 종료한 프로모션과 관련된 옵션을 삭제하는 것과 같이 분명한 앱 또는 비즈니스 이유가 있는 경우 외에는 사용자가 UI를 보거나 상호작용하는 동안 UI 모양을 업데이트하거나 전환하지 마세요.
  • 동시 가져오기 요청을 대량으로 보내지 마세요. 서버에서 앱을 제한할 수 있습니다. 대부분의 프로덕션 시나리오에서는 이러한 상황이 발생할 위험이 적지만 개발 진행 중에는 문제가 될 수 있습니다. AndroidiOS에 대한 제한 안내를 확인하세요.

다음 단계

이 3가지 기본 전략으로 구성 값을 로드하는 모든 방법을 나타낼 수는 없습니다. 필요에 따라 실시간 업데이트 전파에 설명된 함수 기반의 백그라운드 업데이트와 같이 훨씬 정교한 전략을 고안할 수 있습니다.

구성 값을 가져오고 활성화하는 특정 호출에 대해 자세히 알아보려면 플랫폼별 API 참조를 확인하세요.