원격 구성 매개변수 및 조건

클라이언트 및 서버 사용 사례 모두에 대해 템플릿을 구성할 수 있습니다. 고객 템플릿은 Firebase를 구현하는 모든 앱 인스턴스에 Remote Config용 클라이언트 SDK(Android, Apple, Web, Unity Flutter, C++ 앱에 적합합니다 매개변수 및 값 Remote Config개 서버별 템플릿이 Remote Config 구현에 게재됨 Firebase Admin을 사용하는 (Cloud Run 및 Cloud Functions 포함) Node.js SDK v12.1.0 이상

Firebase 콘솔 또는 Remote Config 백엔드 API, 하나 이상의 매개변수 (키-값 해당 매개변수의 인앱 기본값을 제공합니다. 파라미터 값을 정의하면 인앱 기본값을 재정의할 수 있습니다. 매개변수 키와 값은 문자열이지만 매개변수 값은 다른 데이터 유형으로 변환한 후 앱에서 사용할 수 있습니다.

Firebase 콘솔을 사용하여 Admin SDK 또는 Remote Config REST API 새 기본값을 만들어 매개변수 및 앱 그룹을 타겟팅하는 데 사용되는 조건부 값 인스턴스 Firebase Console에서 구성을 업데이트할 때마다 Firebase가 Remote Config 템플릿의 새 버전을 만들고 게시합니다. 이전 버전은 저장되므로 필요에 따라 검색하거나 롤백할 수 있습니다. 이러한 작업은 Firebase 콘솔에서 수행할 수 있습니다. Firebase Admin SDK, REST API를 사용하며, 다음 페이지에 더 자세히 설명되어 있습니다. Remote Config 템플릿 버전 관리

이 가이드에서는 매개변수, 조건, 규칙, 조건부 다양한 매개변수 값의 우선순위가 Remote Config 서버 및 앱에 포함됩니다. 또한 각 포드의 유형에 대한 규칙을 만드는 데 사용됩니다.

조건, 규칙, 조건부 값

조건은 앱 인스턴스의 그룹을 타겟팅하는 데 사용됩니다. 조건은 지정된 앱 인스턴스에 대해 true로 판정되기 위한 조건에 대해 모두 true로 판정되어야 하는 하나 이상의 규칙들로 구성됩니다. 규칙의 값이 정의되지 않은 경우(예: 사용 가능한 값이 없는 경우)에는 규칙이 false로 판정됩니다.

예를 들어 앱의 스플래시 페이지는 규칙 if device_os = Android:

iOS의 경우 기본값을, Android의 경우 조건부 값을 표시하는 Firebase Console의 'splash_page' 매개변수 화면 캡처

또는 시간 조건을 사용하여 앱에 특별한 프로모션 항목이 표시되는 시점을 제어할 수 있습니다.

한 매개변수는 서로 다른 조건을 사용하는 여러 조건부 값을 가질 수 있으며 여러 매개변수가 한 프로젝트 내에서 조건을 공유할 수 있습니다. Firebase Console의 매개변수 탭에서 각 매개변수의 조건부 값을 가져오는 비율을 볼 수 있습니다. 이 측정항목은 지난 24시간 동안 각 값을 수신한 요청 비율을 나타냅니다.

매개변수 값 우선순위

매개변수 하나에 여러 조건부 값이 연결될 수 있습니다. 이 다음 규칙은 Remote Config에서 가져올 값을 결정합니다. 서버 및 서버의 특정 지점에서 지정된 앱 인스턴스에서 사용되는 값 시간:

다음 우선순위 목록에 따라 파라미터 값을 가져옵니다.

  1. 우선 특정 앱 인스턴스에서 true로 판정되는 조건이 있으면 조건부 값이 적용됩니다. 여러 조건이 true로 판정되면 Firebase 콘솔 UI에 표시되는 첫 번째 (맨 위)가 우선합니다. 해당 조건과 연결된 조건부 값은 앱이 실행될 때 백엔드에서 값을 가져옵니다 조건 탭에서 조건을 드래그 앤 드롭하여 조건의 우선순위를 변경할 수 있습니다.

  2. true로 판정되는 조건이 있는 조건부 값이 없는 경우 앱이 가져올 때 Remote Config의 기본값이 제공됩니다. 값을 삭제합니다. 백엔드에 매개변수가 없거나 기본값이 인앱 기본값 사용으로 설정된 경우 어떤 값도 설정되지 않습니다. 값을 가져올 수 있습니다.

앱에서 get 메서드가 반환하는 매개변수 값은 다음과 같은 우선순위를 따릅니다.

  1. 백엔드에서 가져와서 활성화한 값이 있으면 앱에서 이 값을 사용합니다. 활성화된 매개변수 값은 영구적입니다.
  2. 백엔드에서 가져온 값이 없거나 Remote Config 백엔드가 활성화되지 않았습니다. 앱에서 인앱을 사용합니다. 기본값입니다.

    기본값을 얻고 설정하는 방법에 대한 자세한 내용은 다음을 참조하세요. Remote Config 템플릿 기본값을 다운로드합니다.

  3. 인앱 기본값이 설정되지 않은 경우 앱은 정적 유형 값을 사용합니다. 예를 들어 int에는 0, boolean에는 false가 사용됩니다.

이 그림은 Remote Config 백엔드 및 앱에서 다음을 수행합니다.

위 순서가 지정된 목록에서 설명하는 흐름을 표시한 다이어그램

매개변수 값 데이터 유형

Remote Config를 사용하면 각 매개변수의 데이터 유형을 선택할 수 있습니다. 템플릿 앞에 있는 해당 유형을 기준으로 모든 Remote Config 값의 유효성을 검사합니다. 업데이트. 데이터 유형은 getRemoteConfig에 저장되고 반환됩니다. 합니다.

지원되는 데이터 유형은 다음과 같습니다.

  • String
  • Boolean
  • Number
  • JSON

Firebase 콘솔 UI에서 데이터 유형은 드롭다운을 클릭합니다. REST API에서 유형은 매개변수 객체 내 value_type 필드

매개변수 그룹

Remote Config를 사용하면 매개변수를 그룹화하여 더 체계적으로 정리할 수 있습니다. 사용성 향상

예를 들어 3가지 인증 유형을 사용 설정하거나 사용 중지해야 한다고 가정해 보겠습니다. 하는 동시에 새로운 로그인 기능을 출시할 수 있었습니다. Remote Config를 사용하면 3가지 매개변수를 만들어 원하는 유형을 사용 설정한 다음, 접두사나 특수 정렬을 추가하지 않고도 '새 로그인'이라는 그룹으로 구성할 수 있습니다.

Firebase 콘솔 또는 Remote Config REST API 생성한 각 매개변수 그룹의 이름은 Remote Config 템플릿 매개변수 그룹을 만들 때는 다음 사항에 유의하세요.

  • 매개변수는 언제든지 하나의 그룹에만 포함될 수 있으며, 매개변수 키는 모든 매개변수에서 고유해야 합니다.
  • 매개변수 그룹 이름은 256자(영문 기준)로 제한됩니다.
  • REST API와 Firebase 콘솔을 모두 사용하는 경우 REST API 로직이 게시 시 매개변수 그룹을 처리하도록 업데이트됩니다.

Firebase 콘솔을 사용하여 매개변수 그룹 만들기 또는 수정

다음에서 매개변수를 그룹화할 수 있습니다. 매개변수 탭의 Firebase 콘솔 그룹을 만들거나 수정하려면 다음 안내를 따르세요.

  1. 그룹 관리를 선택합니다.
  2. 추가할 매개변수의 체크박스를 선택하고 그룹으로 이동을 선택합니다.
  3. 기존 그룹을 선택하거나, 이름과 설명을 입력하고 새 그룹 만들기를 선택하여 새 그룹을 만듭니다. 그룹을 저장한 후에는 변경사항 게시 버튼을 사용하여 게시할 수 있습니다.

프로그래매틱 방식으로 그룹 만들기

Remote Config REST API는 매개변수 그룹을 만들고 게시할 수 있는 자동화된 방법을 제공합니다. REST에 익숙하고 API에 대한 요청을 승인하도록 설정한 경우 다음 단계를 수행하여 프로그래매틱 방식으로 그룹을 관리할 수 있습니다.

  1. 현재 템플릿을 검색합니다.
  2. 매개변수 그룹을 나타내는 JSON 객체를 추가합니다.
  3. HTTP PUT 요청을 사용하여 매개변수 그룹을 게시합니다.

parameterGroups 객체는 중첩된 설명과 그룹화된 매개변수 목록이 있는 그룹 키를 포함합니다. 각 그룹 키는 전역적으로 고유해야 합니다.

예를 들어 하나의 매개변수 pumpkin_spice_season이 있는 매개변수 그룹 '새 메뉴'를 추가하는 일부 템플릿 버전은 다음과 같습니다.

{
  "parameters": {},
  "version": {
    "versionNumber": "1",

    …

  },
  "parameterGroups": {
    "new menu": {
      "description": "New Menu",
      "parameters": {
        "pumpkin_spice_season": {
          "defaultValue": {
            "value": "true"
          },
          "description": "Whether it's pumpkin spice season."
        }
      }
    }
  }
}

조건 규칙 유형

Firebase 콘솔에서는 다음과 같은 규칙 유형이 지원됩니다. 상응 기능은 Remote Config REST API에서 사용할 수 있습니다. 자세한 내용은 조건식 참조.

규칙 유형 연산자 참고
== Firebase 프로젝트에 연결된 앱의 앱 ID 목록에서 선택합니다. Firebase에 앱을 추가할 때 번들 ID 또는 Android를 입력합니다. 앱 ID로 노출되는 속성을 정의하는 패키지 이름 규칙 Remote Config

이 속성은 다음과 같이 사용합니다.
  • Apple 플랫폼: 앱의 CFBundleIdentifier를 사용합니다. Xcode에서 앱의 기본 대상에 대한 일반 탭에서 번들 식별자를 확인할 수 있습니다.
  • Android: 앱의 applicationId를 사용합니다. 앱 수준 build.gradle 파일에서 applicationId을 찾을 수 있습니다.
앱 버전 문자열 값:
정확히 일치,
포함,
제외,
정규 표현식

숫자 값:
=, ≠, >, ≥, <, ≤

타겟팅할 앱의 버전을 지정합니다.

이 규칙을 사용하기 전에 앱 ID 규칙을 사용하여 Firebase 프로젝트에 연결된 Android/Apple 앱을 선택해야 합니다.

Apple 플랫폼: 앱의 CFBundleShortVersionString을 사용합니다.

참고: Apple 앱이 Firebase Apple 플랫폼 SDK를 사용하는지 확인하세요. 버전 6.24.0 이상(CFBundleShortVersionString이 전송되지 않음) 이전 버전 (출시 노트 참고)

Android: 앱의 versionName을 사용합니다.

이 규칙의 문자열 비교에서는 대소문자가 구분됩니다. 정확히 일치, 포함, 제외 또는 정규 표현식 연산자를 사용하는 경우 여러 개의 값을 선택할 수 있습니다.

정규 표현식 연산자를 사용하면 RE2 형식으로 정규 표현식을 만들 수 있습니다. 정규 표현식은 타겟 버전 문자열의 일부 또는 전부와 일치할 수 있습니다. ^$ 앵커를 사용하여 타겟 문자열의 시작, 끝 또는 전체와 일치시킬 수도 있습니다.

빌드 번호 문자열 값:
정확히 일치,
포함,
제외,
정규 표현식

숫자 값:
=, ≠, &gt;, ≥, &lt;, ≤

타겟팅할 앱의 빌드를 지정합니다.

이 규칙을 사용하기 전에 앱 ID 규칙을 사용하여 Firebase 프로젝트에 연결된 Apple 또는 Android 앱을 선택해야 합니다.

이 연산자는 Apple 및 Android 앱에서만 사용할 수 있으며 Apple의 경우 앱의 CFBundleVersion, Android의 경우 앱의 versionCode에 해당합니다. 이 규칙의 문자열 비교에서는 대소문자가 구분됩니다.

정확히 일치, 포함, 제외 , 정규 표현식 연산자를 사용하는 경우 여러 개의 값을 선택할 수 있습니다.

정규 표현식 연산자를 사용하면 RE2 형식으로 정규 표현식을 만들 수 있습니다. 정규 표현식은 타겟 버전 문자열의 일부 또는 전부와 일치할 수 있습니다. ^$ 앵커를 사용하여 타겟 문자열의 시작, 끝 또는 전체와 일치시킬 수도 있습니다.

플랫폼 == iOS
Android
 
운영체제 ==

타겟팅할 운영체제를 지정합니다.

이 규칙을 사용하기 전에 앱 ID 규칙을 사용하여 Firebase 프로젝트에 연결된 웹 앱을 선택해야 합니다.

이 규칙은 특정 웹 앱 인스턴스의 운영체제 및 버전이 지정된 목록의 타겟 값과 일치하는 경우 true로 판정됩니다.
브라우저 ==

타겟팅할 브라우저를 지정합니다.

이 규칙을 사용하기 전에 앱 ID 규칙을 사용하여 Firebase 프로젝트에 연결된 웹 앱을 선택해야 합니다.

이 규칙은 특정 웹 앱 인스턴스의 브라우저 및 버전이 지정된 목록의 타겟 값과 일치하는 경우 true로 판정됩니다.
기기 카테고리 해당, 비해당 모바일 이 규칙은 웹 앱에 액세스하는 기기가 모바일인지 모바일이 아닌지(데스크톱 또는 콘솔) 평가합니다. 이 규칙 유형은 웹 앱에서만 사용할 수 있습니다.
언어 있음 언어를 하나 이상 선택합니다. 이 규칙은 특정 앱 인스턴스가 나열된 언어 중 하나를 사용하는 기기에 설치된 경우 true로 판정됩니다.
국가/지역 있음 리전 또는 국가를 하나 이상 선택합니다. 이 규칙은 특정 앱 인스턴스가 나열된 리전이나 국가에 속할 때 true로 판정됩니다. 기기 국가 코드는 요청에 있는 기기의 IP 주소로 결정되거나 Firebase 애널리틱스(애널리틱스 데이터가 Firebase와 공유되는 경우)에 의해 결정됩니다.
잠재 사용자 1명 이상 포함 Google Analytics 잠재고객 목록에서 다음 조건을 하나 이상 선택하세요. 확인할 수 있습니다

이 규칙을 사용하려면 앱 ID 규칙으로 Firebase 프로젝트에 연결된 앱을 선택해야 합니다.

참고: 많은 Analytics 잠재고객이 이벤트 또는 사용자 속성을 표시할 수 있는데, 이는 앱 사용자의 행동에 따라 달라질 수 있습니다. 특정 앱에 잠재고객의 사용자 규칙이 적용되는 데 시간이 걸릴 수 있음 인스턴스를 만들 수 있습니다

사용자 속성 문자열 값:
포함,
제외,
완전 일치,
정규 표현식

숫자 값:
=, ≠, >, ≥, <, ≤

참고: 클라이언트에서 사용자 속성에는 문자열 값만 설정할 수 있습니다. 숫자 연산자를 사용하는 조건의 경우 Remote Config는 상응하는 user 속성을 정수/부동 소수점 수로 변환합니다.
사용 가능한 Google Analytics 사용자 목록에서 선택 속성 사용자 속성을 통해 사용자층의 특정 세그먼트에만 앱을 맞춤설정하는 방법은 Remote Config 및 사용자 속성을 참고하세요.

사용자 속성에 관한 자세한 내용은 다음 가이드를 참고하세요.

정확히 일치, 포함, 제외 또는 정규 표현식 연산자를 사용하는 경우 여러 개의 값을 선택할 수 있습니다.

정규 표현식 연산자를 사용하면 RE2 형식으로 정규 표현식을 만들 수 있습니다. 정규 표현식은 타겟 버전 문자열의 일부 또는 전부와 일치할 수 있습니다. ^$ 앵커를 사용하여 타겟 문자열의 시작, 끝 또는 전체와 일치시킬 수도 있습니다.

참고: 자동으로 수집되는 사용자 속성 Remote Config 조건을 만들 때는 사용할 수 없습니다.
임의 비율의 사용자 슬라이더(Firebase Console에 있으며 REST API<=, >, between 연산자를 사용합니다.) 0~100

이 필드를 사용하여 앱 인스턴스의 무작위 샘플에 변경사항을 적용합니다. 샘플 크기는 최소 0.0001%이며 슬라이더 위젯을 사용하여 무작위 셔플된 사용자(앱 인스턴스)를 그룹으로 분류합니다.

각 앱 인스턴스는 프로젝트에 정의된 시드에 따라 무작위 정수 또는 분수에 영구적으로 매핑됩니다.

규칙은 기본 키를 사용합니다 (아래에 시드 수정으로 표시됨 Firebase 콘솔)에서 실행할 수 있습니다. 규칙을 사용하여 시드 필드를 지워서 기본 키를 사용합니다.

지정된 백분율 범위에서 동일한 앱 인스턴스를 일관되게 처리하려면 조건 전체에서 동일한 시드 값을 사용합니다. 또는 새 시드를 지정하여 특정 백분율 범위에 속하는 무작위로 할당된 앱 인스턴스의 새 그룹을 선택합니다.

예를 들어 앱 사용자 중 서로 겹치지 않는 5%에 각각 적용되는 2가지 관련 조건을 만들려면 0~5% 사이의 백분율과 일치하는 조건 1개를 구성하고 5~10% 사이의 범위와 일치하는 다른 조건을 구성할 수 있습니다. 일부 사용자가 무작위로 두 그룹에 모두 포함될 수 있게 하려면 각 조건 내의 규칙에 서로 다른 시드 값을 사용합니다.

가져온 세그먼트 있음 가져온 세그먼트를 하나 이상 선택합니다. 이 규칙을 사용하려면 커스텀 가져온 세그먼트를 설정해야 합니다.
날짜/시간 이전, 이후 기기 시간대 또는 특정 시간대(예: '(GMT+11) 시드니 시간대')로 지정된 날짜 및 시간입니다. 현재 시간을 기기에서 가져온 시간과 비교합니다.
최초 실행 이전, 이후 지정된 시간대로 지정된 날짜 및 시간입니다.

지정된 기간 내에 타겟팅된 앱을 처음 연 사용자와 일치합니다.

다음 SDK가 필요합니다.

  • Google Analytics용 Firebase SDK
  • Apple 플랫폼 SDK v9.0.0 이상 또는 Android SDK v21.1.1 이상(Firebase BoM v30.3.0 이상)
설치 ID 있음 타겟팅할 하나 이상의 설치 ID를 지정합니다(최대 50개). 이 규칙은 특정 설치 ID가 쉼표로 구분된 값 목록에 있는 경우 해당 설치에 대해 true로 판정됩니다.

설치 ID를 가져오는 방법은 클라이언트 식별자 가져오기를 참조하세요.
사용자가 존재합니다. (연산자 없음) 현재 프로젝트 내 모든 앱의 모든 사용자를 타겟팅합니다.

이 조건 규칙을 사용하면 앱 또는 플랫폼에 관계없이 프로젝트 내의 모든 사용자를 일치시킬 수 있습니다.

검색 매개변수 및 조건

프로젝트의 매개변수 키, 매개변수 값, 조건을 검색할 수 있습니다. Firebase 콘솔에서 Remote Config 매개변수 탭 상단에 있는 검색창

매개변수 및 조건의 한도

Firebase 프로젝트에서 최대 2,000개의 매개변수와 최대 500개의 조건을 사용할 수 있습니다. 매개변수 키의 길이는 최대 256자이고 밑줄 또는 영문자(A~Z, a~z)로 시작해야 하며 숫자도 포함할 수 있습니다. 한 프로젝트에서 매개변수 값 문자열의 총 길이는 1,000,000자를 초과할 수 없습니다.

매개변수 및 조건의 변경사항 보기

Firebase 콘솔에서 Remote Config 템플릿의 최신 변경사항을 확인할 수 있습니다. 개별 매개변수 및 조건에 대해 다음을 수행할 수 있습니다.

  • 매개변수 또는 조건을 마지막으로 수정한 사용자의 이름을 봅니다.

  • 같은 날에 변경이 발생한 경우에는 시간(분) 또는 변경사항이 활성 도메인에 게시된 후 경과한 시간 Remote Config 템플릿.

  • 변경이 1일 이상 전에 발생한 경우 해당 변경이 발생한 날짜를 확인합니다. 변경사항이 활성 Remote Config 템플릿에 게시되었습니다.

매개변수 업데이트 내역

Remote Config 매개변수 페이지의 최종 게시 열에는 각 매개변수를 수정한 마지막 사용자와 변경사항에 대한 마지막 게시 날짜가 표시됩니다.

  • 그룹화된 매개변수의 변경 메타데이터를 보려면 매개변수 그룹을 펼칩니다.

  • 게시 날짜를 기준으로 오름차순 또는 내림차순으로 정렬하려면 최종 게시 열 라벨을 클릭합니다.

상태 업데이트 내역

Remote Config 조건 페이지에서 조건을 마지막으로 수정한 사용자와 사용자가 수정한 날짜 확인 각 조건 아래의 최종 수정 날짜 옆에 입력합니다.

다음 단계

Firebase 프로젝트 구성을 시작하려면 다음을 참조하세요. Firebase Remote Config 프로젝트 설정