RemoteConfig は Remote Config テンプレートを表します。
プロジェクトの Remote Config テンプレートは、各アプリケーション インスタンスの取得時に評価されます。
注: 現在、サーバー テンプレートでは割合の条件がサポートされています。サポートされていない条件値を含むサーバー テンプレートを公開すると、検証エラーが返されます。詳しくは、サーバー環境での Remote Config をご覧ください。
パラメータの解決値は、次のように決定されます。
conditional values
がアプリ インスタンスの true
conditions
を参照する場合、パラメータの解決値は、name
が conditions list
の最も古い条件値です。
また、パラメータに 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_percent
が true
の場合、fruit
は banana
と評価されます。is_ios
と is_in_20_percent
が両方とも false の場合、fruit
は pear
と評価されます。デフォルト値が指定されず、is_ios
と is_in_20_percent
の両方が false であった場合、fruit
の値は Remote Config サーバーからクライアントに返されません。
projects.updateRemoteConfig
呼び出しが成功してプロジェクトの Remote Config テンプレートが公開されると、クライアントはこれらのパラメータ値をフェッチしてユーザーに表示できます。
JSON 表現 |
---|
{ "conditions": [ { object ( |
フィールド | |
---|---|
conditions[] |
優先度の降順の条件のリスト。
|
parameters |
パラメータキーとオプションのデフォルト値および条件値(省略可)のマップ。
|
version |
出力のみ(バージョン |
parameterGroups |
パラメータ グループ名とその説明およびグループ化されたパラメータのマッピング。グループ名は変更可能ですが、構成内のグループ間で一意である必要があります。名前は最大 256 文字で、人が読める形式になっています。Unicode 文字を使用できます。 グループにはパラメータのリストがあり、API のユーザーは同じ機能やテーマに関連付けられたパラメータをグループ化できるため、整理してアクセスしやすくなります。 たとえば、「Search V2」という名前のパラメータ グループには、「New mobile search view」という
|
RemoteConfigCondition
特定のユーザー グループを対象とする条件。これらの条件のリストは RemoteConfig オブジェクトの一部です。
JSON 表現 |
---|
{
"name": string,
"expression": string,
"tagColor": enum ( |
フィールド | |
---|---|
name |
必須。この条件の空でない一意の名前。 |
expression |
必須。この条件のロジック。 このフィールドで想定される構文については、条件式に関するドキュメントをご覧ください。 |
tagColor |
省略可。Firebase コンソールで表示するために、この条件に関連付けられた色。この値を指定しないか、「CONDITION_DISPLAY_COLOR_UNSPECIFIED」と指定すると、コンソールで任意の色が選択され、条件に関連付けられます。 |
状態表示色
表示目的で条件に関連付けられた色のリスト。
列挙型 | |
---|---|
CONDITION_DISPLAY_COLOR_UNSPECIFIED |
|
BLUE |
青 |
BROWN |
ブラウン大学 |
CYAN |
シアン |
DEEP_ORANGE |
別名「Red Orange」 |
GREEN |
緑 |
INDIGO |
インディゴ |
LIME |
ライム |
ORANGE |
オレンジ |
PINK |
ピンク |
PURPLE |
紫 |
TEAL |
青緑 |
RemoteConfigParameter
google.firebase.remoteconfig.v1.RemoteConfig.parameters
のパラメータキーに関連付けられたパラメータ値。
パラメータを有効にするには、少なくとも defaultValue
または conditionalValues
エントリが必要です。
JSON 表現 |
---|
{ "defaultValue": { object ( |
フィールド | |
---|---|
defaultValue |
省略可 - 名前付き条件のいずれも |
conditionalValues |
省略可 - (
|
description |
省略可。このパラメータの説明。長さは 256 文字以下にしてください。説明には任意の Unicode 文字を含めることができます。 |
valueType |
現在のバージョンのテンプレートに含まれるこのパラメータのすべての値のデータ型。指定しない場合のデフォルトは |
RemoteConfigParameterValue
RemoteConfigParameterValue リソースには、パラメータに含まれる可能性のある値が含まれます。
JSON 表現 |
---|
{ // Union field |
フィールド | |
---|---|
共用体フィールド value_option 。RemoteConfigParameterValue は、文字列(値)またはブール値(use_in_app_default。該当する場合は true に設定)で構成されます。value_option は次のいずれかになります。 |
|
value |
パラメータが設定されている文字列値。 |
useInAppDefault |
true の場合、クライアントに返されるパラメータ値からパラメータは省略されます。 |
personalizationValue |
設定の取得時に計算される、ユーザー固有の動的な値。 |
rolloutValue |
Firebase ABT テストサービスによって管理される動的なロールアウトの値。 |
パーソナライズの値
パーソナライズされた値を取得するために必要な情報が含まれています。
JSON 表現 |
---|
{ "personalizationId": string } |
フィールド | |
---|---|
personalizationId |
パーソナライズ定義を表す識別子。この定義は、構成の取得時に値を解決するために使用されます。システムによって生成される値は変更できません。 |
ロールアウト値
ロールアウトに関する情報。
JSON 表現 |
---|
{ "rolloutId": string, "value": string, "percent": number } |
フィールド | |
---|---|
rolloutId |
ロールアウト テストにパラメータ値を関連付ける ID。 |
value |
ロールアウトされるユーザー指定の値。 |
percent |
段階的な公開の値を受け取るユーザーの割合。 |
ParameterValueType
パラメータ値に使用できるデータ型。
列挙型 | |
---|---|
PARAMETER_VALUE_TYPE_UNSPECIFIED |
認識されない列挙値のキャッチオール。 |
STRING |
文字列値を表します。 |
BOOLEAN |
ブール値(「true」または「false」)を表します。 |
NUMBER |
正と負の整数値と浮動小数点値の両方を表します。 |
JSON |
JSON 値を表します。 |
RemoteConfigParameterGroup
パラメータの名前付きグループ。パラメータのグループ化は管理のみを目的としており、クライアントサイドでのパラメータ値の取得には影響しません。
JSON 表現 |
---|
{
"description": string,
"parameters": {
string: {
object ( |
フィールド | |
---|---|
description |
省略可。グループの説明。長さは 256 文字以下にしてください。説明には任意の Unicode 文字を含めることができます。 |
parameters |
このグループに属するパラメータのデフォルト値(省略可)と条件値(省略可)へのパラメータキーのマップ。パラメータは RemoteConfig ごとに 1 回だけ現れます。グループ化されていないパラメータはトップレベルにあります。グループ内で編成されたパラメータは、そのグループのパラメータ マップ内に現れます。
|