이 페이지에는 Remote Config 백엔드 API 또는 Firebase Console을 사용하여 조건식을 빌드하는 방법에 관한 참조 정보가 포함되어 있습니다. 백엔드 API 설정 및 사용에 대한 자세한 내용은 프로그래매틱 방식으로 원격 구성 수정을 참조하세요.
조건을 만드는 데 사용되는 요소
Firebase Console에서 Remote Config을 구성할 때 조건을 만드는 데 사용되는 요소가 Remote Config REST API에서도 똑같이 지원됩니다.
| 요소 | 설명 | 
|---|---|
|  &&  | 조건에 요소를 둘 이상 사용하는 경우 요소의 논리적 'and'를 만드는 데 사용됩니다. REST 구문에서  참고: 앰퍼샌드(&) 앞뒤에 공백이 있어야 합니다. 예를 들면  | 
| app.build | 앱의 빌드 번호 값에 따라  참고: Apple 및 Android 기기에서만 사용할 수 있습니다. Apple에서는 CFBundleVersion 값을 사용하고 Android에서는 versionCode 값을 사용합니다. | 
| app.version | 앱의 버전 번호 값에 따라  참고: Android 기기는 versionName 값을, Apple 기기는 CFBundleShortVersionString 값을 사용합니다. | 
| app.id | 앱의 Firebase 앱 ID에 대한 요소입니다. | 
| app.audiences | 하나 이상의 Firebase 애널리틱스 잠재고객의 사용자 접속 및 부재에 따라 TRUE또는FALSE로 판정하는 요소입니다. | 
| app.firstOpenTimestamp | 사용자가 앱을 처음 실행할 때를 기반으로 하는 Google Analytics first_open이벤트에서 가져온 요소입니다. 고정 시간대를 지정하는 옵션과 함께 ISO 날짜 형식을 사용합니다. 예를 들면app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles')입니다.
  시간대를 지정하지 않으면 GMT가 사용됩니다. | 
| app.userProperty | Google Analytics 사용자 속성의 숫자 또는 문자열 값에 따라 TRUE또는FALSE로 판정하는 요소입니다. | 
| app.operatingSystemAndVersion | 앱이 실행되는 운영체제에 대한 요소입니다.
  OS 및 OS 버전이 지정된 타겟과 일치하면  참고: 웹 앱에서만 사용할 수 있습니다. | 
| app.browserAndVersion | 앱이 실행되는 브라우저에 대한 요소입니다.
  브라우저 및 브라우저 버전이 지정된 타겟과 일치하면  참고: 웹 앱에서만 사용할 수 있습니다. | 
| app.firebaseInstallationId | 특정 기기 설치의 ID에 대한 요소입니다.
  설치 ID가 지정된 설치 ID 중 하나와 일치하면 TRUE로 판정합니다. | 
| app.customSignal | 커스텀 신호 조건의 숫자, 시맨틱 또는 문자열 값에 따라 TRUE또는FALSE로 판정하는 요소입니다. | 
| device.country | ISO 3166-1 alpha-2 표준(예: 미국 또는 영국)을 사용하는 기기가 위치한 지역 및 국가에 대한 요소입니다. 국가가 예상 국가 코드와 일치하면 TRUE로 판정합니다. | 
| device.dateTime | 기기가 마지막으로 가져오기를 수행한 시간에 대한 요소입니다.
  고정 시간대를 지정하는 옵션과 함께 ISO 날짜 형식을 사용합니다. 예를 들면 dateTime('2017-03-22T13:39:44', 'America/Los_Angeles')입니다. | 
| device.language | 기기에서 선택한 언어에 대한 요소입니다. 언어는 es-ES, pt-BR 또는 en-US와 같은 IETF 언어 태그를 사용해 표현됩니다.
  언어가 예상 언어 코드와 일치하면 TRUE로 판정합니다. | 
| device.os | 기기에서 사용하는 운영체제(Apple 또는 Android)에 대한 요소입니다.
  기기 OS가 예상 유형이면 TRUE로 판정합니다. | 
| percent | 무작위로 할당된 부분 백분위수에 사용자가 포함되면 TRUE로 판정합니다. 최소 표본 크기는 0.000001%입니다. | 
단일 요소 조건에는 3가지 필드가 포함됩니다.
- 임의로 정의된 name(영문 기준 최대 100자)
- 위에 나와 있는 요소로 구성된 TRUE또는FALSE로 판정되는 조건식
- (선택사항) 'BLUE', 'BROWN', 'CYAN', 'DEEP_ORANGE', 'GREEN', 'INDIGO', 'LIME', 'ORANGE', 'PINK', 'PURPLE' 또는 'TEAL' 등의tagColor입니다. 색상은 대소문자를 구분하지 않으며 조건이 Firebase Console에 표시되는 방법에만 영향을 미칩니다.
지원되는 연산자
예를 들어 실제 앱 빌드가 123이나 492면app.build.notContains([123, 456])가 TRUE를 반환하지만 실제 앱 빌드가 999면 FALSE를 반환합니다.
   예를 들어 실제 앱 버전이 123이나 492면 app.version.notContains([123, 456])가 TRUE를 반환하지만 실제 앱 버전이 999면 FALSE를 반환합니다.
  | 요소 | 지원되는 연산자 | 설명 | 
|---|---|---|
| app.audiences | .inAtLeastOne([...]) | 실제 잠재고객이 목록에 있는 하나 이상의 잠재고객 이름과 일치하면  app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) | 
| app.audiences | .notInAtLeastOne([...]) | 실제 잠재고객이 목록에 있는 하나 이상의 잠재고객 이름과 일치하지 않으면  | 
| app.audiences | .inAll([...]) | 실제 잠재고객이 목록에 있는 모든 잠재고객 이름의 구성원인 경우  | 
| app.audiences | .notInAll([...]) | 실제 잠재고객이 목록에 있는 잠재고객의 구성원이 아닌 경우  | 
| app.firstOpenTimestamp | <=, > | 
 | 
| app.userProperty | <,<=,==,!=,>=,> | 실제 사용자 속성을 지정된 값과 수치상으로 비교한 결과가 연산자와 일치할 경우  | 
| app.userProperty | .contains([...]) | 타겟 값 중 실제 사용자 속성의 하위 문자열이 하나라도 있는 경우  | 
| app.userProperty | .notContains([...]) | 타겟 값 중 실제 사용자 속성의 하위 문자열이 하나도 없으면  | 
| app.userProperty | .exactlyMatches([...]) | 목록의 타겟 값 중 하나라도 실제 사용자 속성과 대소문자까지 정확히 일치하는 경우  | 
| app.userProperty | .matches([...]) | 목록의 타겟 정규 표현식 중 하나라도 실제 값의 하위 문자열 또는 전체와 일치하는 경우  | 
| app.id | == | 지정된 값이 앱의 앱 ID와 일치하는 경우  | 
| app.build | <,<=,==,!=,>=,> | 실제 앱 빌드를 지정된 값과 수치상으로 비교한 결과가 연산자와 일치할 경우  | 
| app.build | .contains([...]) | 타겟 값 중 하나라도 실제 앱 빌드의 하위 문자열인 경우  | 
| app.build | .notContains([...]) | 타겟 값 중 실제 앱 빌드의 하위 문자열이 하나도 없으면  | 
| app.build | .exactlyMatches([...]) | 목록의 타겟 값 중 하나라도 실제 앱 빌드와 정확하게 일치하는 경우  | 
| app.build | .matches([...]) | 목록의 타겟 정규 표현식 중 하나라도 실제 값의 하위 문자열 또는 전체와 일치하는 경우  | 
| app.version | <,<=,==,!=,>=,> | 실제 앱 버전을 지정된 값과 수치상으로 비교한 결과가 연산자와 일치할 경우  | 
| app.version | .contains([...]) | 타겟 값 중 하나라도 실제 앱 버전의 하위 문자열인 경우  | 
| app.version | .notContains([...]) | 타겟 값 중 실제 앱 버전의 하위 문자열이 하나도 없으면  | 
| app.version | .exactlyMatches([...]) | 목록의 타겟 값 중 하나라도 실제 앱 버전과 정확하게 일치하는 경우  | 
| app.version | .matches([...]) | 목록의 타겟 정규 표현식 중 하나라도 실제 값의 하위 문자열 또는 전체와 일치하는 경우  | 
| app.operatingSystemAndVersion | .inOne([...]) | 목록의 타겟 값 중 하나라도 OS 및 버전과 일치하는 경우  
    app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh')
    .version.==('10.15')])
     | 
| app.browserAndVersion | .inOne([...]) | 목록의 타겟 값 중 하나라도 브라우저 및 버전과 일치하는 경우  
    app.browserAndVersion.inOne([browserName('Chrome').anyVersion])
     | 
| app.firebaseInstallationId | in [...] | 설치 ID가 목록에 지정된 것과 일치하는 경우  | 
| app.customSignal | <,<=,==,!=,>=,> | 커스텀 신호 조건을 지정된 값과 수치상으로 비교한 결과가 연산자와 일치할 경우  | 
| app.customSignal | .contains([...]) | 타겟 값 중 하나라도 실제 커스텀 신호 조건의 하위 문자열인 경우  | 
| app.customSignal | .notContains([...]) | 타겟 값 중 하나라도 실제 커스텀 신호 조건의 하위 문자열인 경우  | 
| app.customSignal | .exactlyMatches([...]) | 실제 커스텀 신호 조건이 목록의 타겟 값 중 하나와 대소문자까지 정확하게 일치하는 경우  | 
| app.customSignal | .matches([...]) | 목록의 타겟 정규 표현식 중 하나라도 실제 커스텀 신호 조건의 하위 문자열 또는 전체와 일치하는 경우  | 
| version(app.customSignal) | <,<=,==,!=,>=,> | 커스텀 신호 조건을 지정된 값과 의미론적으로 비교한 결과가 연산자와 일치할 경우  | 
| device.country | in [...] | 기기의 국가가 목록에 지정된 것과 일치하는 경우  | 
| device.dateTime | <=,> | 현재 시간을 조건의 대상 시간과 비교하고 연산자에 따라  | 
| device.language | in [...] | 앱의 언어 중 하나라도 목록의 언어와 일치하는 경우  | 
| device.os | ==,!= | 기기의 운영체제를 해당 필드의 값과 비교했을 때 그 결과가 연산자와 일치하면 TRUE가 반환됩니다. | 
| percent | <=,>,between | 
 시드를 지정하여 조건 규칙 유형에 설명된 대로 특정 백분율 범위에 속하는 무작위로 할당된 앱 인스턴스의 새 그룹을 선택할 수 있습니다. 다음 예시와 같이 연산자 앞에 시드 이름을 입력하면 됩니다. percent('keyName') <= 10특정 범위를 구성하려면  percent between 20 and 60 커스텀 시드를 사용하여 60~80명의 사용자 범위를 구성하는 방법은 다음과 같습니다. percent('seedName') between 60 and 80 |