Trang này chứa thông tin tham khảo để tạo biểu thức có điều kiện bằng cách sử dụng API phụ trợ Remote Config hoặc bảng điều khiển Firebase. Để biết thêm thông tin về cách thiết lập và sử dụng API phần phụ trợ, hãy xem phần Sửa đổi Remote Config theo phương thức lập trình.
Các phần tử dùng để tạo điều kiện
REST API Remote Config hỗ trợ những phần tử mà bạn có thể dùng để tạo điều kiện khi định cấu hình Remote Config bằng Bảng điều khiển Firebase:
Phần tử | Mô tả |
---|---|
&& |
Dùng để tạo một "và" logic của các phần tử nếu sử dụng nhiều phần tử cho một điều kiện. Nếu một phần tử được dùng trong cú pháp REST mà không có Lưu ý: bạn phải thêm dấu cách trước và sau dấu và. Ví dụ: |
app.build |
Đánh giá thành Lưu ý: Chỉ có trên thiết bị Apple và Android. Đối với Apple, hãy sử dụng giá trị của CFBundleVersion và đối với Android, hãy sử dụng giá trị của versionCode. |
app.version |
Đánh giá thành Lưu ý: Đối với thiết bị Android, hãy sử dụng giá trị của versionName và đối với thiết bị Apple, hãy sử dụng giá trị của CFBundleShortVersionString. |
app.id |
Một phần tử dựa trên Mã ứng dụng Firebase của ứng dụng |
app.audiences |
Một phần tử đánh giá thành TRUE hoặc FALSE dựa trên sự hiện diện hay vắng mặt của người dùng trong một hoặc nhiều đối tượng Analytics của Firebase. |
app.firstOpenTimestamp |
Một phần tử dựa trên lần đầu tiên người dùng chạy một ứng dụng, được lấy từ sự kiện Google Analytics first_open . Sử dụng định dạng ngày ISO với lựa chọn chỉ định múi giờ cố định; ví dụ: app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Nếu bạn không chỉ định múi giờ, thì GMT sẽ được sử dụng.
|
app.userProperty |
Một phần tử đánh giá thành TRUE hoặc FALSE dựa trên giá trị bằng số hoặc giá trị chuỗi của Google Analytics Thuộc tính người dùng. |
app.operatingSystemAndVersion |
Một phần tử dựa trên hệ điều hành mà ứng dụng đang chạy.
Đánh giá thành Lưu ý: Chỉ dành cho ứng dụng Web. |
app.browserAndVersion |
Một phần tử dựa trên trình duyệt mà ứng dụng đang chạy.
Đánh giá thành Lưu ý: Chỉ dành cho ứng dụng Web. |
app.firebaseInstallationId |
Một phần tử dựa trên mã nhận dạng của các lượt cài đặt thiết bị cụ thể.
Đánh giá thành TRUE khi mã nhận dạng lượt cài đặt khớp với một trong các mã nhận dạng lượt cài đặt được chỉ định. |
app.customSignal |
Một phần tử đánh giá thành TRUE hoặc FALSE dựa trên giá trị số, ngữ nghĩa hoặc chuỗi của điều kiện tín hiệu tuỳ chỉnh. |
device.country |
Một phần tử dựa trên khu vực/quốc gia mà thiết bị đang ở, sử dụng tiêu chuẩn ISO 3166-1 alpha-2 (ví dụ: Hoa Kỳ hoặc Vương quốc Anh). Đánh giá thành TRUE khi một quốc gia khớp với mã quốc gia dự kiến. |
device.dateTime |
Một phần tử dựa trên thời gian tìm nạp gần đây nhất mà thiết bị thực hiện.
Sử dụng định dạng ngày ISO với tuỳ chọn để chỉ định một múi giờ cố định; ví dụ: dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') . |
device.language |
Một phần tử dựa trên ngôn ngữ được chọn trên thiết bị. Ngôn ngữ được biểu thị bằng thẻ ngôn ngữ IETF, chẳng hạn như es-ES, pt-BR hoặc en-US.
Đánh giá thành TRUE khi một ngôn ngữ khớp với mã ngôn ngữ dự kiến. |
device.os |
Một phần tử dựa trên hệ điều hành được dùng trên thiết bị (Apple hoặc Android).
Đánh giá thành TRUE khi hệ điều hành của thiết bị là loại dự kiến. |
percent |
Đánh giá thành TRUE dựa trên việc người dùng có nằm trong tỷ lệ phần trăm phân số được chỉ định ngẫu nhiên hay không (với kích thước mẫu nhỏ đến mức 0,000001%). |
Điều kiện có một phần tử chứa 3 trường:
name
do người dùng tuỳ ý xác định (tối đa 100 ký tự)- Một biểu thức có điều kiện đánh giá thành
TRUE
hoặcFALSE
, bao gồm các phần tử được trình bày ở trên. - (Không bắt buộc)
tagColor
, có thể là "BLUE
", "BROWN
", "CYAN
", "DEEP_ORANGE
", "GREEN
", "INDIGO
", "LIME
", "ORANGE
", "PINK
", "PURPLE
" hoặc "TEAL
". Màu sắc không phân biệt chữ hoa chữ thường và chỉ ảnh hưởng đến cách các điều kiện xuất hiện trong bảng điều khiển Firebase.
Các toán tử được hỗ trợ
Ví dụ:app.build.notContains([123, 456])
sẽ trả về TRUE
nếu bản dựng ứng dụng thực tế là 123 hoặc 492, nhưng sẽ trả về FALSE
nếu bản dựng ứng dụng thực tế là 999.
Ví dụ: app.version.notContains([123, 456])
sẽ trả về TRUE
nếu phiên bản ứng dụng thực tế là 123 hoặc 492, nhưng sẽ trả về FALSE
nếu phiên bản ứng dụng thực tế là 999.
Phần tử | Các toán tử được hỗ trợ | Mô tả |
---|---|---|
app.audiences |
.inAtLeastOne([...]) |
Trả về TRUE nếu đối tượng thực tế khớp với ít nhất một tên đối tượng trong danh sách.Ví dụ: app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences |
.notInAtLeastOne([...]) |
Trả về TRUE nếu đối tượng thực tế không khớp với ít nhất một tên đối tượng trong danh sách. |
app.audiences |
.inAll([...]) |
Trả về TRUE nếu đối tượng thực tế là thành viên của mọi tên đối tượng trong danh sách. |
app.audiences |
.notInAll([...]) |
Trả về TRUE nếu đối tượng thực tế không phải là thành viên của bất kỳ đối tượng nào trong danh sách. |
app.firstOpenTimestamp |
<=, > |
So sánh thời gian của sự kiện first_open với thời gian được chỉ định trong điều kiện và trả về TRUE hoặc FALSE dựa trên toán tử.Cách sử dụng mẫu: app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Cách chỉ định một khoảng thời gian: app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00')
Nếu bạn không chỉ định múi giờ, thì GMT sẽ được sử dụng.
|
app.userProperty |
< , <= , == , != ,
>= , > |
Trả về TRUE nếu thuộc tính người dùng thực tế so sánh bằng số với giá trị được chỉ định theo cách khớp với toán tử. |
app.userProperty |
.contains([...]) |
Trả về TRUE nếu bất kỳ giá trị mục tiêu nào là chuỗi con của thuộc tính người dùng thực tế. |
app.userProperty |
.notContains([...]) |
Trả về TRUE nếu không có giá trị mục tiêu nào là chuỗi con của thuộc tính người dùng thực tế. |
app.userProperty |
.exactlyMatches([...]) |
Trả về TRUE nếu thuộc tính người dùng thực tế hoàn toàn khớp (phân biệt chữ hoa chữ thường) với bất kỳ giá trị mục tiêu nào trong danh sách. |
app.userProperty |
.matches([...]) |
Trả về TRUE nếu bất kỳ biểu thức chính quy mục tiêu nào trong danh sách khớp với một chuỗi con hoặc toàn bộ giá trị thực. Để buộc khớp toàn bộ chuỗi, hãy thêm "^" vào đầu và "$" vào cuối biểu thức chính quy. Sử dụng cú pháp RE2. |
app.id |
== |
Trả về TRUE nếu giá trị được chỉ định khớp với Mã ứng dụng của ứng dụng. |
app.build |
< , <= , == , != ,
>= , > |
Trả về TRUE nếu bản dựng ứng dụng thực tế so sánh bằng số với giá trị được chỉ định theo cách khớp với toán tử. |
app.build |
.contains([...]) |
Trả về TRUE nếu bất kỳ giá trị mục tiêu nào là chuỗi con của bản dựng ứng dụng thực tế, ví dụ: "a" và "bc" là chuỗi con của "abc". |
app.build |
.notContains([...]) |
Trả về TRUE nếu không có giá trị mục tiêu nào là chuỗi con của bản dựng ứng dụng thực tế. |
app.build |
.exactlyMatches([...]) |
Trả về TRUE nếu bản dựng ứng dụng thực tế hoàn toàn khớp với bất kỳ giá trị mục tiêu nào trong danh sách. |
app.build |
.matches([...]) |
Trả về TRUE nếu bất kỳ biểu thức chính quy mục tiêu nào trong danh sách khớp với một chuỗi con hoặc toàn bộ giá trị thực tế. Để buộc khớp toàn bộ chuỗi, hãy thêm "^" vào đầu biểu thức chính quy và thêm "$" vào cuối biểu thức chính quy. Sử dụng cú pháp
RE2. |
app.version |
< , <= , == , != ,
>= , > |
Trả về TRUE nếu phiên bản ứng dụng thực tế so sánh bằng số với giá trị được chỉ định theo cách khớp với toán tử. |
app.version |
.contains([...]) |
Trả về TRUE nếu bất kỳ giá trị mục tiêu nào là chuỗi con của phiên bản ứng dụng thực tế – ví dụ: "a" và "bc" là chuỗi con của "abc". |
app.version |
.notContains([...]) |
Trả về TRUE nếu không có giá trị mục tiêu nào là chuỗi con của phiên bản ứng dụng thực tế. |
app.version |
.exactlyMatches([...]) |
Trả về TRUE nếu phiên bản ứng dụng thực tế hoàn toàn khớp với bất kỳ giá trị mục tiêu nào trong danh sách. |
app.version |
.matches([...]) |
Trả về TRUE nếu bất kỳ biểu thức chính quy mục tiêu nào trong danh sách khớp với một chuỗi con hoặc toàn bộ giá trị thực tế. Để buộc khớp toàn bộ chuỗi, hãy thêm "^" vào đầu biểu thức chính quy và thêm "$" vào cuối biểu thức chính quy. Sử dụng cú pháp
RE2. |
app.operatingSystemAndVersion |
.inOne([...]) |
Trả về TRUE nếu hệ điều hành và phiên bản khớp với bất kỳ giá trị đích nào trong danh sách.Ví dụ: app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion |
.inOne([...]) |
Trả về TRUE nếu trình duyệt và phiên bản khớp với bất kỳ giá trị mục tiêu nào trong danh sách.Ví dụ: app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId |
in [...] |
Trả về TRUE nếu mã nhận dạng lượt cài đặt khớp với mã nhận dạng bất kỳ được chỉ định trong danh sách. Ví dụ về cách sử dụng: app.firebaseInstallationId
in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7'] |
app.customSignal |
< , <= , == , != ,
>= , > |
Trả về TRUE nếu điều kiện tín hiệu tuỳ chỉnh so sánh bằng số với giá trị được chỉ định theo cách khớp với toán tử.
|
app.customSignal |
.contains([...]) |
Trả về TRUE nếu bất kỳ giá trị mục tiêu nào là chuỗi con của điều kiện tín hiệu tuỳ chỉnh thực tế.
|
app.customSignal |
.notContains([...]) |
Trả về TRUE nếu bất kỳ giá trị mục tiêu nào là chuỗi con của điều kiện tín hiệu tuỳ chỉnh thực tế.
|
app.customSignal |
.exactlyMatches([...]) |
Trả về TRUE nếu điều kiện tín hiệu tuỳ chỉnh thực tế khớp chính xác (phân biệt chữ hoa chữ thường) với bất kỳ giá trị mục tiêu nào trong danh sách.
|
app.customSignal |
.matches([...]) |
Trả về TRUE nếu có biểu thức chính quy mục tiêu nào trong danh sách khớp với một chuỗi con hoặc toàn bộ điều kiện tín hiệu tuỳ chỉnh thực tế. Để buộc khớp toàn bộ chuỗi, hãy thêm "^" vào đầu biểu thức chính quy và thêm "$" vào cuối biểu thức chính quy. Sử dụng cú pháp
RE2.
|
version(app.customSignal) |
< , <= , == , != ,
>= , > |
Trả về TRUE nếu điều kiện tín hiệu tuỳ chỉnh so sánh theo ngữ nghĩa với giá trị được chỉ định theo cách khớp với toán tử.
|
device.country |
in [...] |
Trả về TRUE nếu quốc gia của thiết bị khớp với bất kỳ quốc gia nào được chỉ định trong danh sách. Ví dụ về cách sử dụng: device.country in
['gb', 'us'] .
Mã quốc gia của thiết bị được xác định bằng địa chỉ IP của thiết bị trong yêu cầu hoặc mã quốc gia do Firebase Analytics xác định (nếu dữ liệu Analytics được chia sẻ với Firebase). |
device.dateTime |
<= , > |
So sánh thời gian hiện tại với thời gian mục tiêu của điều kiện và đánh giá là TRUE hoặc FALSE dựa trên toán tử. Ví dụ về cách sử dụng:
dateTime < dateTime('2017-03-22T13:39:44') . |
device.language |
in [...] |
Trả về TRUE nếu có ngôn ngữ nào của ứng dụng khớp với một ngôn ngữ trong danh sách. Ví dụ về cách sử dụng: device.language in ['en-UK', 'en-US'] . |
device.os |
== , != |
Trả về TRUE nếu hệ điều hành của thiết bị so sánh với giá trị trong trường đó khớp với toán tử. |
percent |
<= , > , between |
Trả về TRUE nếu giá trị trong trường percent so sánh với giá trị được chỉ định ngẫu nhiên khớp với toán tử.
Bạn có thể chỉ định một giá trị ban đầu để chọn một nhóm phiên bản ứng dụng mới được chỉ định ngẫu nhiên cho một phạm vi tỷ lệ phần trăm nhất định như mô tả trong phần Các loại quy tắc điều kiện. Để thực hiện việc này, hãy cung cấp tên của giá trị ban đầu trước toán tử, như trong ví dụ sau: percent('keyName') <= 10 Để định cấu hình một dải ô cụ thể, bạn có thể sử dụng toán tử percent between 20 and 60 Cách định cấu hình một dải người dùng từ 60 đến 80 bằng cách sử dụng một giá trị ban đầu tuỳ chỉnh: percent('seedName') between 60 and 80 |