RemoteConfig

Cấu hình từ xa đại diện cho một mẫu Cấu hình từ xa.

Mẫu Cấu hình từ xa của một dự án sẽ được đánh giá trong mỗi lần tìm nạp của từng phiên bản ứng dụng.

Lưu ý: Các mẫu máy chủ hiện hỗ trợ điều kiện về tỷ lệ phần trăm. Việc xuất bản một mẫu máy chủ có giá trị có điều kiện không được hỗ trợ sẽ trả về lỗi xác thực. Xem Cấu hình từ xa trong môi trường máy chủ để biết thêm thông tin.

Giá trị đã phân giải của một thông số được xác định như sau:

Do conditional values tham chiếu đến true conditions đối với phiên bản ứng dụng, giá trị đã phân giải của tham số là giá trị có điều kiện có name là giá trị sớm nhất trong conditions list.

Ngược lại, nếu tham số có default value, thì giá trị đã phân giải sẽ được đặt thành giá trị mặc định.

Nếu không, tham số này không có giá trị và bị loại khỏi kết quả mà phiên bản ứng dụng tìm nạp.

Ví dụ: giả sử chúng ta có khoá tham số fruit, với giá trị mặc định là pear và giá trị con có điều kiện là {"is_ios": "apple", "is_in_20_percent": "banana"}, trong đó "is_ios""is_20_percent" là tên của các điều kiện trong danh sách điều kiện theo thứ tự. Giá trị của fruit sẽ cho kết quả là apple nếu is_ios là true. Ngược lại, nếu is_in_20_percenttrue, fruit sẽ đánh giá là banana, còn nếu is_iosis_in_20_percent đều là giá trị false, thì fruit sẽ đánh giá là pear. Nếu không có giá trị mặc định nào được chỉ định và is_iosis_in_20_percent đều sai, thì sẽ không có giá trị nào cho fruit được trả về từ máy chủ Cấu hình từ xa về máy khách.

Sau khi xuất bản mẫu Cấu hình từ xa của một dự án thông qua một lệnh gọi projects.updateRemoteConfig thành công, ứng dụng có thể tìm nạp các giá trị thông số này và hiển thị chúng cho người dùng.

Biểu diễn dưới dạng JSON
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
Trường
conditions[]

object (RemoteConfigCondition)

Danh sách các điều kiện theo thứ tự giảm dần theo mức độ ưu tiên.

Giá trị của các mục nhập google.firebase.remoteconfig.v1.RemoteConfigCondition.name phải là duy nhất.

parameters

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

Ánh xạ các khoá tham số tới giá trị mặc định không bắt buộc và giá trị có điều kiện không bắt buộc của các khoá đó.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

version

object (Version)

Chỉ có đầu ra, ngoại trừ phiên bản description. Siêu dữ liệu liên kết với một phiên bản cụ thể của mẫu. Bạn có thể chỉ định trường mô tả của một phiên bản trong lệnh gọi projects.updateRemoteConfig.

parameterGroups

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

Ánh xạ tên nhóm thông số với nội dung mô tả và thông số được nhóm. Tên của một nhóm có thể thay đổi nhưng phải là duy nhất trong số các nhóm trong cấu hình. Tên này có giới hạn là 256 ký tự và người dùng có thể đọc được. Bạn có thể dùng mọi ký tự Unicode.

Các nhóm có danh sách tham số cho phép người dùng API nhóm các tham số được liên kết với cùng một tính năng hoặc chủ đề với nhau để tổ chức dễ dàng truy cập.

Ví dụ: một nhóm thông số có tên là "Tìm kiếm phiên bản 2" có thể có description "Chế độ xem tìm kiếm mới trên thiết bị di động" và chứa các tham số cho bố cục và phông chữ của lượt tìm kiếm mới.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Điều kiện cấu hình từ xa

Một điều kiện nhắm đến một nhóm người dùng cụ thể. Danh sách các điều kiện này tạo nên một phần của đối tượng RemoteConfig.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
Trường
name

string

Bắt buộc. Tên không để trống và duy nhất của điều kiện này.

expression

string

Bắt buộc. Logic của điều kiện này.

Hãy xem tài liệu về Biểu thức điều kiện để biết cú pháp dự kiến của trường này.

tagColor

enum (ConditionDisplayColor)

Không bắt buộc. Màu liên kết với điều kiện này để hiển thị trong Bảng điều khiển của Firebase. Không chỉ định giá trị này hoặc có "PA_DISPLAY_COLOR_UNSPECIFIED" dẫn đến việc Bảng điều khiển chọn một màu tuỳ ý để liên kết với điều kiện đó.

Màu hiển thị điều kiện

Danh sách màu được liên kết với Điều kiện cho mục đích hiển thị.

Enum
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Xanh dương
BROWN Nâu
CYAN Lục lam
DEEP_ORANGE hay còn gọi là "Cam đỏ"
GREEN Xanh lục
INDIGO Chàm
LIME Vôi
ORANGE Orange
PINK Màu hồng
PURPLE Màu tía
TEAL Xanh két

Thông số cấu hình từ xa

Một giá trị tham số được liên kết với khoá tham số trong google.firebase.remoteconfig.v1.RemoteConfig.parameters.

Ở mức tối thiểu, bạn phải có một mục defaultValue hoặc conditionalValues để tham số có hiệu lực.

Biểu diễn dưới dạng JSON
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
Trường
defaultValue

object (RemoteConfigParameterValue)

Không bắt buộc – giá trị để đặt tham số khi không có điều kiện nào được đặt tên được đánh giá là true.

conditionalValues

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

Không bắt buộc – một bản đồ (condition name, giá trị). Điều kiện_name của mức độ ưu tiên cao nhất (mục được liệt kê đầu tiên trong danh sách điều kiện của Cấu hình từ xa) sẽ xác định giá trị của thông số này.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

description

string

Không bắt buộc. Nội dung mô tả cho Thông số này. Độ dài của nhãn phải ít hơn hoặc bằng 256 ký tự . Nội dung mô tả có thể chứa bất kỳ ký tự Unicode nào.

valueType

enum (ParameterValueType)

Loại dữ liệu cho tất cả các giá trị của thông số này trong phiên bản hiện tại của mẫu. Giá trị mặc định là ParameterValueType.STRING nếu bạn không chỉ định.

Giá trị thông số cấu hình từ xa

Tài nguyên RemoteConfigParameterValue chứa giá trị mà một thông số có thể có.

Biểu diễn dưới dạng JSON
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  },
  "rolloutValue": {
    object (RolloutValue)
  }
  // End of list of possible types for union field value_option.
}
Trường
Trường kết hợp value_option. RemoteConfigParameterValue bao gồm một chuỗi (giá trị) hoặc một boolean (use_in_app_default, đặt thành true nếu có). value_option chỉ có thể là một trong những trạng thái sau đây:
value

string

Giá trị chuỗi mà tham số được đặt.

useInAppDefault

boolean

Nếu đúng, tham số này sẽ bị loại khỏi các giá trị tham số được trả về ứng dụng.

personalizationValue

object (PersonalizationValue)

Một giá trị động, dành riêng cho người dùng được tính toán khi tìm nạp cấu hình.

rolloutValue

object (RolloutValue)

Một giá trị Phát hành động do dịch vụ Thử nghiệm ABT của Firebase quản lý.

Giá trị cá nhân hoá

Chứa thông tin cần thiết để tìm nạp giá trị được cá nhân hoá.

Biểu diễn dưới dạng JSON
{
  "personalizationId": string
}
Trường
personalizationId

string

Giá trị nhận dạng đại diện cho định nghĩa về hoạt động cá nhân hoá. Định nghĩa này dùng để phân giải giá trị tại thời điểm tìm nạp cấu hình. Bạn không được sửa đổi giá trị do hệ thống tạo ra này.

Giá trị triển khai

Thông tin liên quan đến Bản phát hành.

Biểu diễn dưới dạng JSON
{
  "rolloutId": string,
  "value": string,
  "percent": number
}
Trường
rolloutId

string

Giá trị nhận dạng liên kết một giá trị thông số với một thử nghiệm Phát hành.

value

string

Giá trị do người dùng chỉ định sẽ được triển khai.

percent

number

Tỷ lệ phần trăm người dùng sẽ nhận được giá trị của đợt phát hành.

Loại giá trị tham số

Các loại dữ liệu được chấp nhận cho giá trị thông số.

Enum
PARAMETER_VALUE_TYPE_UNSPECIFIED Tổng hợp các giá trị enum không nhận dạng được.
STRING Đại diện cho các giá trị Chuỗi.
BOOLEAN Biểu thị các giá trị Boolean ("true" hoặc "false").
NUMBER Đại diện cho cả giá trị số nguyên dương và giá trị số thực có độ chính xác đơn.
JSON Biểu thị các giá trị JSON.

Nhóm Cấu hình từ xa

Một nhóm thông số được đặt tên. Việc nhóm các thông số chỉ dành cho mục đích quản lý và không ảnh hưởng đến việc tìm nạp giá trị thông số phía máy khách.

Biểu diễn dưới dạng JSON
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
Trường
description

string

Không bắt buộc. Nội dung mô tả cho nhóm. Độ dài của nhãn phải ít hơn hoặc bằng 256 ký tự. Nội dung mô tả có thể chứa bất kỳ ký tự Unicode nào.

parameters

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

Ánh xạ các khoá tham số tới giá trị mặc định không bắt buộc của các khoá đó và giá trị có điều kiện không bắt buộc cho các tham số thuộc nhóm này. Thông số chỉ xuất hiện một lần cho mỗi Cấu hình từ xa: một thông số chưa được nhóm xuất hiện ở cấp cao nhất; một tham số được tổ chức trong một nhóm sẽ xuất hiện trong sơ đồ tham số của nhóm đó.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.