RemoteConfig

RemoteConfig は Remote Config テンプレートを表します。

プロジェクトの Remote Config テンプレートは、各アプリケーション インスタンスのフェッチ中に評価されます。

パラメータの解決された値は次のように決定されます。

アプリケーション インスタンスのtrue conditions参照するconditional values指定すると、パラメーターの解決された値は、 conditions listnameが最も古い条件値になります。

それ以外の場合、パラメータにdefault valueある場合、解決された値はデフォルト値に設定されます。

それ以外の場合、パラメーターには値がなく、アプリケーション インスタンスがフェッチする結果から省略されます。

たとえば、デフォルト値pearと条件値サブマップ{"is_ios": "apple", "is_in_20_percent": "banana"}持つパラメーター キーfruitがあるとします。ここで、 "is_ios""is_20_percent"は順序付けされた条件の名前です。状態リスト。 is_ios true の場合、 fruitの値はappleと評価されます。それ以外の場合、 is_in_20_percenttrueの場合、 fruitbananaと評価され、 is_iosis_in_20_percentが両方とも false の場合、 fruitpearと評価されます。デフォルト値が指定されておらず、 is_iosis_in_20_percentが両方とも false の場合、 fruitの値は Remote Config サーバーからクライアントに返されません。

プロジェクトの Remote Config テンプレートが、 projects.updateRemoteConfig呼び出しの成功によって公開されると、クライアントはこれらのパラメーター値を取得してユーザーに表示できます。

JSON表現
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
田畑
conditions[]

object ( RemoteConfigCondition )

優先度の降順に並べられた条件のリスト。

google.firebase.remoteconfig.v1.RemoteConfigCondition.nameエントリの値は一意である必要があります。

parameters

map (key: string, value: object ( RemoteConfigParameter ))

パラメータ キーとそのオプションのデフォルト値およびオプションの条件値へのマップ。

"key": valueペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

version

object ( Version )

バージョンのdescriptionを除き、出力のみ。テンプレートの特定のバージョンに関連付けられたメタデータ。バージョンの説明フィールドは、 projects.updateRemoteConfig呼び出しで指定できます。

parameterGroups

map (key: string, value: object ( RemoteConfigParameterGroup ))

パラメータ グループ名の説明とグループ化されたパラメータへのマップ。グループの名前は変更可能ですが、構成内のグループ間で一意である必要があります。名前は 256 文字に制限されており、人間が判読できるように設計されています。あらゆる Unicode 文字が許可されます。

グループにはパラメータのリストがあり、API のユーザーは、同じ機能またはテーマに関連付けられたパラメータをグループ化して、組織的に簡単にアクセスできるようになります。

たとえば、「Search V2」という名前のパラメータ グループには「新しいモバイル検索ビュー」 descriptionがあり、新しい検索のレイアウトとフォントのパラメータが含まれている場合があります。

"key": valueペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

RemoteConfigCondition

特定のユーザー グループを対象とした条件。これらの条件のリストは、RemoteConfig オブジェクトの一部を構成します。

JSON表現
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
田畑
name

string

必須。この条件の空ではない一意の名前。

expression

string

必須。この条件のロジック。

このフィールドの予想される構文については、条件式に関するドキュメントを参照してください。

tagColor

enum ( ConditionDisplayColor )

オプション。 Firebase コンソールでの表示を目的として、この条件に関連付けられた色。この値を指定しない場合、または「CONDITION_DISPLAY_COLOR_UNSPECIFIED」を指定すると、コンソールは条件に関連付ける任意の色を選択します。

状態表示色

表示目的で条件に関連付けられている色のリスト。

列挙型
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE
BROWN茶色
CYANシアン
DEEP_ORANGE別名「レッドオレンジ」
GREEN
INDIGOインジゴ
LIMEライム
ORANGEオレンジ
PINKピンク
PURPLE
TEALティール

RemoteConfigパラメータ

google.firebase.remoteconfig.v1.RemoteConfig.parametersのパラメータ キーに関連付けられたパラメータ値。

パラメータが何らかの効果を発揮するには、少なくとも、 defaultValueまたはconditionalValuesエントリが存在する必要があります。

JSON表現
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
田畑
defaultValue

object ( RemoteConfigParameterValue )

オプション - 指定された条件がいずれもtrueと評価されない場合にパラメーターに設定する値。

conditionalValues

map (key: string, value: object ( RemoteConfigParameterValue ))

オプション - ( condition name , 値) マップ。最も高い優先順位のcondition_name (RemoteConfig の条件リストの最初にリストされているもの) によって、このパラメータの値が決まります。

"key": valueペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

description

string

オプション。このパラメータの説明。その長さは 256 文字以下である必要があります。説明には Unicode 文字を含めることができます。

valueType

enum ( ParameterValueType )

現在のバージョンのテンプレートにおけるこのパラメータのすべての値のデータ型。指定しない場合、デフォルトはParameterValueType.STRINGになります。

RemoteConfigParameterValue

RemoteConfigParameterValue リソースには、パラメーターが持つことができる値が含まれています。

JSON表現
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  }
  // End of list of possible types for union field value_option.
}
田畑
ユニオンフィールドvalue_option 。 RemoteConfigParameterValue は、文字列 (値) またはブール値 (use_in_app_default、該当する場合は true に設定) で構成されます。 value_optionは、次のいずれか 1 つだけを指定できます。
value

string

パラメータに設定される文字列値。

useInAppDefault

boolean

true の場合、クライアントに返されるパラメータ値からパラメータが省略されます。

personalizationValue

object ( PersonalizationValue )

構成がフェッチされるときに計算される動的なユーザー固有の値。

パーソナライゼーション価値

パーソナライズされた値を取得するために必要な情報が含まれています。

JSON表現
{
  "personalizationId": string
}
田畑
personalizationId

string

パーソナライゼーション定義を表す識別子。この定義は、構成の取得時に値を解決するために使用されます。このシステム生成値は変更しないでください。

パラメータ値の種類

パラメーター値として受け入れられるデータ型。

列挙型
PARAMETER_VALUE_TYPE_UNSPECIFIED認識できない列挙値をキャッチオールします。
STRING文字列値を表します。
BOOLEANブール値 (「true」または「false」) を表します。
NUMBER正と負の両方の整数値と浮動小数点数を表します。
JSON JSON値を表します。

RemoteConfigParameterGroup

パラメータの名前付きグループ。パラメータのグループ化は管理のみを目的としており、クライアント側でのパラメータ値の取得には影響しません。

JSON表現
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
田畑
description

string

オプション。グループの説明。その長さは 256 文字以下である必要があります。説明には Unicode 文字を含めることができます。

parameters

map (key: string, value: object ( RemoteConfigParameter ))

このグループに属するパラメータのオプションのデフォルト値およびオプションの条件値へのパラメータ キーのマップ。パラメータは RemoteConfig ごとに 1 回だけ表示されます。グループ化されていないパラメータは最上位に表示されます。グループ内で編成されたパラメータは、そのグループのパラメータ マップ内に表示されます。

"key": valueペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }