RemoteConfig 代表 Remote Config 模板。
系统会在提取每个应用实例期间对项目的 Remote Config 模板进行评估。
注意:服务器模板目前支持百分比条件。如果您发布的服务器模板包含不受支持的条件值,则会返回验证错误。如需了解详情,请参阅服务器环境中的 Remote Config。
参数的解析值按如下方式确定:
假设 conditional values
引用了应用实例的 true
conditions
,则该形参的解析值是一个条件值,其 name
是 conditions list
中的最早日期。
否则,如果参数具有 default value
,则解析值将设置为默认值。
否则,该参数没有值,并且将从应用实例提取的结果中省略。
例如,假设我们有参数键 fruit
,默认值为 pear
,条件值子映射为 {"is_ios": "apple", "is_in_20_percent":
"banana"}
,其中 "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,则 Remote Config 服务器不会向客户端返回 fruit
的值。
通过成功的 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 |
也称为“红橙” |
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 |
将参数值与发布实验相关联的标识符。 |
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 中,参数仅出现一次:未分组的参数会显示在顶层;在组内整理的参数出现在其组的参数映射中。 包含一系列 |