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 được đánh giá trong quá trình tìm nạp của mỗi 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ẫu máy chủ chứa các giá trị có điều kiện không được hỗ trợ sẽ trả về lỗi xác thực. Xem phần 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:

Với conditional values tham chiếu đến true conditions cho thực thể ứng dụng, giá trị đã phân giải của tham số là giá trị có điều kiện có name xuất hiện 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.

Ngoài ra, tham số này không có giá trị và bị bỏ qua khỏi kết quả mà thực thể ứ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à sơ đồ con giá trị có điều kiện {"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 được sắp xếp theo thứ tự. Giá trị của fruit sẽ đánh giá là apple nếu is_ios là đúng. Ngược lại, nếu is_in_20_percenttrue, fruit sẽ cho kết quả là banana, và nếu is_iosis_in_20_percent đều sai, thì fruit sẽ đánh giá là pear. Nếu không có giá trị mặc định nào được chỉ định, đồng thời is_iosis_in_20_percent đều sai, thì sẽ không có giá trị nào cho fruit được máy chủ Cấu hình từ xa trả về cho máy khách.

Sau khi mẫu Cấu hình từ xa của một dự án được xuất bản thông qua 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à cho người dùng thấy.

Biểu diễn 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 được sắp xếp theo thứ tự ưu tiên giảm dần.

Giá trị của các mục 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ố vớ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).

Đố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ột 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))

Bản đồ tên nhóm tham số với nội dung mô tả và tham số được nhóm. Tên của một nhóm là 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 chỉ được dài tối đa 256 ký tự và người dùng có thể đọc được. Mọi ký tự Unicode đều được cho phép.

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

Ví dụ: một nhóm thông số có tên "Search V2" 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 tìm kiếm mới.

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

RemoteConfigCondition

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

Biểu diễn 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.

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 được liên kết với điều kiện này cho mục đích hiển thị trong Bảng điều khiển của Firebase. Nếu bạn không chỉ định giá trị này hoặc để trạng thái "condition_DISPLAY_COLOR_UNSPECIFIED" xuất hiện, Play Console sẽ chọn một màu tuỳ ý để liên kết với điều kiện.

ConditionDisplayColor

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 còn gọi là "Cam đỏ"
GREEN Xanh lục
INDIGO Chàm
LIME Vôi
ORANGE Da cam
PINK Màu hồng
PURPLE Màu tím
TEAL Màu xanh mòng két

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

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

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

Biểu diễn 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 sẽ đánh giá là true.

conditionalValues

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

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

Đố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 biểu tượng phải nhỏ hơn hoặc bằng 256 ký tự . 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ả giá trị của tham 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 không chỉ định.

RemoteConfigParameterValue

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

Biểu diễn 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 hợp value_option. RemoteConfigParameterValue bao gồm một chuỗi (value) 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:
value

string

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

useInAppDefault

boolean

Nếu đúng thì thông số này sẽ bị bỏ qua khỏi các giá trị thông 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 khi tìm nạp cấu hình.

rolloutValue

object (RolloutValue)

Giá trị Phát hành linh động do dịch vụ Thử nghiệm ABT trong 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 JSON
{
  "personalizationId": string
}
Trường
personalizationId

string

Giá trị nhận dạng biểu thị đị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 thể sửa đổi giá trị do hệ thống tạo.

Giá trị phát hành

Thông tin liên quan đến đợt Phát hành.

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

string

Giá trị nhận dạng liên kết giá trị thông số với 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ị 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 cho các giá trị enum không được nhận dạng.
STRING Đại diện cho các giá trị Chuỗi.
BOOLEAN Đại diện cho các giá trị Boolean ("true" hoặc "false").
NUMBER Đại diện cho cả số nguyên dương và số nguyên âm cũng như giá trị số thực.
JSON Đại diện cho các giá trị JSON.

RemoteConfigParameterGroup

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 các giá trị thông số phía máy khách.

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

string

Không bắt buộc. Nội dung mô tả về nhóm. Độ dài của mã này phải nhỏ hơn hoặc bằng 256 ký tự. 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ố vớ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) cho những thông số thuộc nhóm này. Một 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 thông số được sắp xếp trong một nhóm xuất hiện trong bản đồ thông số của nhóm đó.

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