RemoteConfig 表示一个 Remote Config 模板。
在提取每个应用实例的过程中,系统会对项目的 Remote Config 模板进行评估。
注意:服务器模板目前支持百分比条件。发布包含不受支持的条件值的服务器模板将返回验证错误。如需了解详情,请参阅服务器环境中的 Remote Config。
参数的解析值按如下方式确定:
给定引用应用实例的 true
conditions
的 conditional values
,该参数的解析值是条件值,其中 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”的参数组可能会显示 包含一系列 |
RemoteConfigCondition
定位特定用户组的条件。这些条件的列表构成 RemoteConfig 对象。
JSON 表示法 |
---|
{
"name": string,
"expression": string,
"tagColor": enum ( |
字段 | |
---|---|
name |
必需。此条件的非空唯一名称。 |
expression |
必需。此条件的逻辑。 如需了解此字段的预期语法,请参阅有关条件表达式的文档。 |
tagColor |
可选。与此条件关联的颜色,用于在 Firebase 控制台中显示。未指定此值或包含“CONDITION_DISPLAY_COLOR_UNSPECIFIED”会导致 Console 选择任意颜色来与该条件相关联。 |
条件显示颜色
为显示目的而与条件相关联的颜色列表。
枚举 | |
---|---|
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 |
当前版本的模板中此参数所有值的数据类型。如果未指定,则默认为 |
RemoteConfig 参数值
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 值。 |
RemoteConfig 参数组
一组命名的参数。分组参数仅用于管理目的,不会影响在客户端提取参数值。
JSON 表示法 |
---|
{
"description": string,
"parameters": {
string: {
object ( |
字段 | |
---|---|
description |
可选。对群组的说明。其长度不得超过 256 个字符。描述可以包含任何 Unicode 字符。 |
parameters |
参数键到属于此群组的参数的可选默认值和可选条件值的映射。每个 RemoteConfig 参数只出现一次:未分组的参数显示在顶级;组内整理的参数出现在其组的参数映射中。 包含一系列 |