RemoteConfig 代表遠端設定範本。
每個應用程式執行個體執行的擷取作業期間,系統都會評估專案的遠端設定範本。
注意:伺服器範本目前支援百分比條件。如果您發布的伺服器範本含有不支援的條件值,就會傳回驗證錯誤。詳情請參閱「伺服器環境中的遠端設定」一文。
參數的解析值決定如下:
由於 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,遠端設定伺服器就不會將 fruit
的值傳回用戶端。
透過成功的 projects.updateRemoteConfig
呼叫發布專案的遠端設定範本後,用戶端就能擷取這些參數值並向使用者顯示。
JSON 表示法 |
---|
{ "conditions": [ { object ( |
欄位 | |
---|---|
conditions[] |
依優先順序遞減排序的條件清單。
|
parameters |
將參數鍵對應至其選用預設值和選用的條件值。 包含 |
version |
|
parameterGroups |
將參數群組名稱對應到其說明和已分組的參數。群組名稱可變動,但在設定中的群組不得重複。名稱長度不得超過 256 個字元,而且是使用者可理解的格式。允許使用任何 Unicode 字元。 群組擁有一系列參數,可讓 API 使用者將與相同功能或主題相關聯的參數歸為一組,方便在機構存取。 舉例來說,名為「Search V2」的參數群組可能會有 包含 |
RemoteConfigCondition
指定特定一群使用者的條件。這些條件的清單組成遠端設定物件。
JSON 表示法 |
---|
{
"name": string,
"expression": string,
"tagColor": enum ( |
欄位 | |
---|---|
name |
執行個體類型,此條件的非空白且不重複的名稱。 |
expression |
執行個體類型,此條件的邏輯。 如要瞭解這個欄位的預期語法,請參閱條件運算式相關說明文件。 |
tagColor |
選用設定。與這項條件相關聯的顏色,方便在 Firebase 控制台中顯示。如果不指定這個值,或含有「CONDITION_DISPLAY_COLOR_UNSPECIFIED」,控制台就會挑選任何要與條件建立關聯的顏色。 |
條件顯示顏色
列出與條件相關的顏色清單。
列舉 | |
---|---|
CONDITION_DISPLAY_COLOR_UNSPECIFIED |
|
BLUE |
藍色 |
BROWN |
布朗大學 (Brown University) |
CYAN |
青色 |
DEEP_ORANGE |
又稱「紅橘」 |
GREEN |
綠色 |
INDIGO |
靛藍色 |
LIME |
萊姆綠 |
ORANGE |
橘色 |
PINK |
粉紅色 |
PURPLE |
紫色 |
TEAL |
藍綠色 |
遠端設定參數
與 google.firebase.remoteconfig.v1.RemoteConfig.parameters
中參數鍵相關聯的參數值。
該參數至少應有 defaultValue
或 conditionalValues
項目,參數才會生效。
JSON 表示法 |
---|
{ "defaultValue": { object ( |
欄位 | |
---|---|
defaultValue |
選用 - 當沒有任何已命名條件的評估結果為 |
conditionalValues |
選用 - a ( 包含 |
description |
選用設定。此參數的說明。長度上限為 256 個字元。說明可能包含任何 Unicode 字元。 |
valueType |
在目前版本的範本中,這個參數所有值的資料類型。如未指定,預設值為 |
遠端設定參數值
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 |
代表個人化定義的 ID。此定義可用於在設定擷取時解析值。請勿修改這個系統產生的值。 |
推出值
推出作業相關資訊。
JSON 表示法 |
---|
{ "rolloutId": string, "value": string, "percent": number } |
欄位 | |
---|---|
rolloutId |
將參數值與推出實驗建立關聯的 ID。 |
value |
要向使用者發布的使用者指定值。 |
percent |
會收到推出作業值的使用者百分比。 |
ParameterValueType
接受的參數值資料類型。
列舉 | |
---|---|
PARAMETER_VALUE_TYPE_UNSPECIFIED |
針對無法辨識的列舉值使用全部接收。 |
STRING |
代表字串值。 |
BOOLEAN |
代表布林值 (「true」或「false」)。 |
NUMBER |
代表正整數和負整數以及浮點值。 |
JSON |
代表 JSON 值。 |
遠端設定參數群組
已命名的參數群組。分組參數僅用於管理,不會影響用戶端擷取參數值。
JSON 表示法 |
---|
{
"description": string,
"parameters": {
string: {
object ( |
欄位 | |
---|---|
description |
選用設定。群組的說明。長度上限為 256 個半形字元。說明可能包含任何 Unicode 字元。 |
parameters |
將參數鍵對應至其選用的預設值,以及屬於這個群組的參數的選用條件值。每個 RemoteConfig 的參數只會顯示一次:未分組的參數會顯示在頂層,而群組內的參數則會顯示在群組的參數對應中。 包含 |