Các thông số và điều kiện của Cấu hình từ xa trong mẫu ứng dụng

Chọn loại mẫu: Mẫu phía máy khách Mẫu phía máy chủ


Bạn có thể phân phát các tham số và giá trị Remote Config từ mẫu ứng dụng khách đến bất kỳ phiên bản ứng dụng nào triển khai SDK ứng dụng khách Firebase cho Remote Config, bao gồm cả ứng dụng Apple, Android, Web, Flutter, Unity và C++.

Khi sử dụng bảng điều khiển Firebase hoặc API phần phụ trợ Remote Config, bạn xác định một hoặc nhiều tham số (cặp khoá-giá trị) và cung cấp các giá trị mặc định trong ứng dụng cho các tham số đó. Bạn có thể ghi đè các giá trị mặc định trong ứng dụng bằng cách xác định giá trị tham số. Khoá tham số và giá trị tham số là chuỗi, nhưng giá trị tham số có thể được truyền dưới dạng các kiểu dữ liệu khác khi bạn sử dụng các giá trị này trong ứng dụng.

Khi sử dụng bảng điều khiển Firebase, Admin SDK hoặc Remote Config API REST, bạn có thể tạo các giá trị mặc định mới cho tham số, cũng như các giá trị có điều kiện được dùng để nhắm đến các nhóm thực thể ứng dụng. Mỗi lần bạn cập nhật cấu hình trong bảng điều khiển Firebase, Firebase sẽ tạo và xuất bản một phiên bản mới của mẫu Remote Config. Phiên bản trước đó sẽ được lưu trữ, cho phép bạn truy xuất hoặc khôi phục khi cần. Bạn có thể thực hiện các thao tác này trong bảng điều khiển Firebase, Firebase Admin SDK và API REST. Các thao tác này được mô tả chi tiết hơn trong phần Quản lý phiên bản mẫu Remote Config.

Hướng dẫn này giải thích các tham số, điều kiện, quy tắc, giá trị có điều kiện và cách ưu tiên các giá trị tham số khác nhau trên phần phụ trợ Remote Config và trong ứng dụng của bạn. Hướng dẫn này cũng cung cấp thông tin chi tiết về các loại quy tắc dùng để tạo điều kiện.

Điều kiện, quy tắc và giá trị có điều kiện

Điều kiện được dùng để nhắm đến một nhóm phiên bản ứng dụng. Điều kiện được tạo thành từ một hoặc nhiều quy tắc mà tất cả đều phải đánh giá là true để điều kiện đánh giá là true cho một phiên bản ứng dụng nhất định. Nếu giá trị của một quy tắc không được xác định (ví dụ: khi không có giá trị nào), thì quy tắc đó sẽ cho kết quả là false.

Ví dụ: một tham số xác định trang chờ của ứng dụng có thể hiển thị các hình ảnh khác nhau dựa trên loại hệ điều hành bằng cách sử dụng quy tắc if device_os = Android:

Ảnh chụp màn hình thông số "splash_page" trong bảng điều khiển của Firebase cho thấy giá trị mặc định của thông số này cho iOS và giá trị có điều kiện cho Android

Hoặc bạn có thể sử dụng điều kiện thời gian để kiểm soát thời điểm ứng dụng hiển thị các mặt hàng khuyến mãi đặc biệt.

Một tham số có thể có nhiều giá trị có điều kiện sử dụng các điều kiện khác nhau và các tham số có thể chia sẻ điều kiện trong một dự án. Trong bảng điều khiển Firebase, hãy chuyển đến trang DevOps & Engagement (DevOps và mức độ tương tác) > Remote Config (Cấu hình từ xa) > Parameters (Thông số) để xem tỷ lệ phần trăm tìm nạp cho các giá trị có điều kiện của từng thông số. Chỉ số này cho biết tỷ lệ phần trăm yêu cầu trong 24 giờ qua đã nhận được từng giá trị.

Thêm, chỉnh sửa, sắp xếp lại hoặc xoá điều kiện bằng bảng điều khiển Firebase

Bạn có thể tạo, chỉnh sửa, sắp xếp lại và xoá các điều kiện nhắm mục tiêu trong bảng điều khiển Firebase. Các điều kiện được chia sẻ giữa các tham số trong một dự án. Sau đây là cách quản lý điều kiện:

  1. Trong bảng điều khiển Firebase, hãy chuyển đến trang DevOps & Engagement (DevOps và Tương tác) > Remote Config (Cấu hình từ xa) > Conditions (Điều kiện) (hoặc chọn Manage conditions (Quản lý điều kiện) trên trang Parameters (Tham số)).
  2. Thêm điều kiện: Nhấp vào Thêm điều kiện (hoặc Tạo điều kiện đầu tiên của bạn), nhập tên xác định mục tiêu nhắm mục tiêu và chọn một hoặc nhiều quy tắc nhắm mục tiêu.
  3. Chỉnh sửa điều kiện: Nhấp vào tên điều kiện hoặc biểu tượng chỉnh sửa, sửa đổi các quy tắc nếu cần, rồi nhấp vào Lưu.
  4. Thay đổi mức độ ưu tiên của điều kiện: Trên trang Điều kiện, hãy kéo các điều kiện bằng tay cầm để sắp xếp lại thứ tự. Các điều kiện ở vị trí cao hơn trong danh sách sẽ được ưu tiên hơn các điều kiện ở vị trí thấp hơn trong danh sách.
  5. Xoá điều kiện: Nhấp vào biểu tượng xoá bên cạnh điều kiện bạn muốn xoá. Nếu điều kiện được tham chiếu bởi bất kỳ tham số nào, thì việc xoá điều kiện đó cũng sẽ xoá các giá trị có điều kiện liên quan.

Sau khi bạn lưu các thay đổi về điều kiện, hãy xuất bản mẫu bằng cách nhấp vào Xuất bản các thay đổi.

Giới hạn của IPv6 đối với tính năng kiểm soát quyền truy cập dựa trên IP

Remote Config có hỗ trợ IPv6 nhưng chỉ ở mức hạn chế khi dùng với các chính sách truy cập dựa trên IP. Nếu tổ chức của bạn hạn chế quyền truy cập vào một số dải IP công khai, thì việc kết nối qua mạng IPv6 có thể gây ra các vấn đề sau:

  • Quyền truy cập vào bảng điều khiển: Bạn có thể không sử dụng được một số tính năng của Remote Config trong bảng điều khiển Firebase, chẳng hạn như tải dữ liệu hoặc thiết lập tiêu chí nhắm mục tiêu.
  • Quyền truy cập của ứng dụng: Ứng dụng có thể gặp lỗi PERMISSION_DENIED.

Để ngăn chặn những vấn đề này, hãy định cấu hình mạng của bạn để sử dụng IPv4 hoặc thêm các dải IP Firebase bắt buộc vào danh sách cho phép của tổ chức.

Mức độ ưu tiên giá trị tham số

Một tham số có thể có một số giá trị có điều kiện liên kết với tham số đó. Các quy tắc sau đây xác định giá trị nào được tìm nạp từ mẫu Remote Config và giá trị nào được dùng trong một phiên bản ứng dụng nhất định tại một thời điểm cụ thể:

  1. Trước tiên, giá trị có điều kiện được áp dụng cho mọi điều kiện được đánh giá là true cho một yêu cầu nhất định của ứng dụng. Nếu nhiều điều kiện được đánh giá là true, thì điều kiện trên cùng xuất hiện trong giao diện người dùng của bảng điều khiển Firebase sẽ được ưu tiên và các giá trị có điều kiện liên kết với điều kiện đó sẽ được cung cấp khi ứng dụng tìm nạp giá trị từ phần phụ trợ. Bạn có thể thay đổi mức độ ưu tiên của các điều kiện bằng cách kéo và thả các điều kiện trong trang Điều kiện.

  2. Nếu không có giá trị có điều kiện nào có điều kiện được đánh giá là true, thì giá trị mặc định của Remote Config sẽ được cung cấp khi ứng dụng tìm nạp giá trị từ phần phụ trợ. Nếu một tham số không tồn tại trong phần phụ trợ hoặc nếu giá trị mặc định được đặt thành Sử dụng giá trị mặc định trong ứng dụng, thì sẽ không có giá trị nào được cung cấp cho tham số đó khi ứng dụng tìm nạp giá trị.

Trong ứng dụng, các giá trị tham số được trả về bằng phương thức get theo danh sách ưu tiên sau

  1. Nếu một giá trị được tìm nạp từ phần phụ trợ rồi được kích hoạt, thì ứng dụng sẽ sử dụng giá trị được tìm nạp. Giá trị tham số đã kích hoạt sẽ được giữ nguyên.
  2. Nếu không có giá trị nào được tìm nạp từ phần phụ trợ hoặc nếu các giá trị được tìm nạp từ phần phụ trợ Remote Config chưa được kích hoạt, thì ứng dụng sẽ sử dụng giá trị mặc định trong ứng dụng.

    Để biết thêm thông tin về cách lấy và đặt giá trị mặc định, hãy xem bài viết Tải giá trị mặc định của mẫu Remote Config xuống.

  3. Nếu không có giá trị mặc định nào trong ứng dụng được đặt, thì ứng dụng sẽ sử dụng giá trị loại tĩnh (chẳng hạn như 0 cho int và false cho boolean).

Hình ảnh này tóm tắt cách ưu tiên các giá trị tham số trong phần phụ trợ Remote Config và trong ứng dụng của bạn:

Biểu đồ minh hoạ quy trình được mô tả trong danh sách theo thứ tự ở trên

Kiểu dữ liệu của giá trị tham số

Remote Config cho phép bạn chọn một kiểu dữ liệu cho mỗi tham số và xác thực tất cả giá trị Remote Config theo kiểu đó trước khi cập nhật mẫu. Loại dữ liệu được lưu trữ và trả về theo yêu cầu getRemoteConfig.

Các loại dữ liệu được hỗ trợ là:

  • String
  • Boolean
  • Number
  • JSON

Trong giao diện người dùng của bảng điều khiển Firebase, bạn có thể chọn loại dữ liệu trong trình đơn thả xuống bên cạnh khoá tham số. Trong API REST, bạn có thể đặt các loại bằng cách sử dụng trường value_type trong đối tượng tham số.

Nhóm tham số

Remote Config cho phép bạn nhóm các tham số lại với nhau để có giao diện người dùng ngăn nắp hơn và khả năng hữu dụng cao hơn.

Ví dụ: giả sử bạn cần bật hoặc tắt ba loại xác thực khác nhau trong khi triển khai tính năng đăng nhập mới. Với Remote Config, bạn có thể tạo ba tham số để bật các loại bạn muốn, sau đó sắp xếp các tham số đó vào một nhóm có tên là "Đăng nhập mới" mà không cần thêm tiền tố hoặc cách sắp xếp đặc biệt.

Bạn có thể tạo nhóm tham số bằng bảng điều khiển Firebase hoặc API REST Remote Config. Mỗi nhóm tham số bạn tạo đều có một tên riêng biệt trong mẫu Remote Config. Khi tạo nhóm tham số, hãy lưu ý những điều sau:

  • Bạn chỉ có thể đưa tham số vào một nhóm tại bất kỳ thời điểm nào và khoá tham số vẫn phải là duy nhất trong tất cả các tham số.
  • Tên nhóm tham số chỉ được có tối đa 256 ký tự.
  • Nếu bạn sử dụng cả API REST và bảng điều khiển Firebase, hãy đảm bảo rằng mọi logic API REST đều được cập nhật để xử lý các nhóm tham số khi phát hành.

Tạo hoặc sửa đổi nhóm tham số bằng bảng điều khiển Firebase

Bạn có thể nhóm các tham số trong bảng điều khiển Firebase. Sau đây là cách tạo hoặc sửa đổi một nhóm:

  1. Trong bảng điều khiển Firebase, hãy chuyển đến trang DevOps & Engagement (DevOps và Mức độ tương tác) > Remote Config (Cấu hình từ xa) > Parameters (Tham số).
  2. Chọn Quản lý nhóm.
  3. Đánh dấu vào hộp cho các tham số bạn muốn thêm rồi chọn Di chuyển vào nhóm.
  4. Chọn một nhóm hiện có hoặc tạo một nhóm mới bằng cách nhập tên và nội dung mô tả, rồi chọn Tạo nhóm mới. Sau khi bạn lưu một nhóm, nhóm đó có thể được xuất bản bằng nút Xuất bản thay đổi.

Tạo nhóm theo phương thức lập trình

Remote Config API REST cung cấp một cách tự động để tạo và xuất bản các nhóm tham số. Giả sử bạn đã quen thuộc với REST và đã thiết lập để cho phép các yêu cầu gửi đến API, bạn có thể thực hiện các bước sau để quản lý nhóm theo phương thức lập trình:

  1. Truy xuất mẫu hiện tại.
  2. Thêm các đối tượng JSON để đại diện cho các nhóm tham số.
  3. Xuất bản các nhóm tham số bằng yêu cầu HTTP PUT.

Đối tượng parameterGroups chứa các khoá nhóm, cùng với nội dung mô tả lồng ghép và danh sách các tham số được nhóm. Xin lưu ý rằng mỗi khoá nhóm phải là duy nhất trên toàn hệ thống.

Ví dụ: dưới đây là một đoạn trích từ bản sửa đổi mẫu, trong đó thêm nhóm tham số "new menu" (trình đơn mới) có một tham số là pumpkin_spice_season:

{
  "parameters": {},
  "version": {
    "versionNumber": "1",

    …

  },
  "parameterGroups": {
    "new menu": {
      "description": "New Menu",
      "parameters": {
        "pumpkin_spice_season": {
          "defaultValue": {
            "value": "true"
          },
          "description": "Whether it's pumpkin spice season."
        }
      }
    }
  }
}

Điều kiện về tín hiệu tuỳ chỉnh

Bạn có thể sử dụng giá trị có điều kiện của tín hiệu tuỳ chỉnh để so khớp các tín hiệu tuỳ ý mà bạn xác định và gửi trong ứng dụng với các điều kiện mà bạn tạo dựa trên các tín hiệu trong Remote Config. Điều này cho phép bạn điều chỉnh trải nghiệm ứng dụng hoặc phía máy khách.

Điều kiện tín hiệu tuỳ chỉnh có sẵn cho các môi trường ứng dụng sau:

  • iOS: phiên bản 11.8.0 trở lên
  • Android: phiên bản 22.1.0 trở lên (Firebase BoM phiên bản 33.8.0 trở lên)
  • Web: phiên bản 11.2.0 trở lên
  • Flutter: Flutter BoM phiên bản 3.6.0 trở lên

Ví dụ: giả sử bạn đang làm việc trên một ứng dụng đặt vé, nơi bạn muốn hiển thị biểu ngữ trên màn hình chính. Bạn có thể sử dụng các điều kiện tín hiệu tuỳ chỉnh phía máy khách để cá nhân hoá các biểu ngữ này dựa trên vị trí và mối quan tâm của người dùng. Bạn có thể làm như sau:

  1. Thêm banner_image_url và banner_link vào mẫu ứng dụng Remote Config. Các giá trị này đại diện cho hình ảnh của biểu ngữ và trang sự kiện liên kết với hình ảnh này.
  2. Đặt tín hiệu tuỳ chỉnh từ ứng dụng của bạn bằng các giá trị city và preferred_event_category.
  3. Thêm giá trị mặc định vào mẫu Remote Config dành riêng cho khách hàng và tạo giá trị có điều kiện dựa trên các tín hiệu tuỳ chỉnh mà bạn đã đặt ở bước trước.
  4. Thêm giá trị mặc định vào mẫu Remote Config dành riêng cho khách hàng và giá trị có điều kiện cho mỗi điều kiện mà bạn đã xác định.
  5. Cập nhật mã xử lý ứng dụng để đặt và sử dụng các điều kiện tín hiệu tuỳ chỉnh.

Giờ đây, ứng dụng của bạn có thể tải banner_image_url và banner_link thích hợp xuống khi tìm nạp các tham số này từ máy chủ Remote Config.

Giới hạn

Khi tạo điều kiện tín hiệu tuỳ chỉnh, bạn phải tuân thủ các giới hạn sau:

  • Số lượng tín hiệu tuỳ chỉnh: Bạn có thể tạo tối đa 100 tín hiệu tuỳ chỉnh cho mỗi phiên bản ứng dụng. Bạn có thể huỷ đặt tín hiệu tuỳ chỉnh bằng cách đặt giá trị của tín hiệu đó thành rỗng.
  • Tên tín hiệu tuỳ chỉnh: Mỗi tên tín hiệu tuỳ chỉnh có thể có tối đa 250 ký tự.
  • Giá trị tín hiệu tuỳ chỉnh: Mỗi giá trị tín hiệu tuỳ chỉnh có thể chứa tối đa 500 ký tự. Khi sử dụng biểu thức chính quy, giới hạn là 250 ký tự.

Loại quy tắc điều kiện

Bảng điều khiển Firebase hỗ trợ các loại quy tắc sau đây. Các tính năng tương đương có trong API REST Remote Config, như được trình bày chi tiết trong tài liệu tham khảo về biểu thức có điều kiện.

Loại quy tắc (Các) nhà mạng (Các) giá trị Lưu ý
Ứng dụng == Chọn trong danh sách Mã ứng dụng cho các ứng dụng liên kết với dự án Firebase của bạn. Khi thêm một ứng dụng vào Firebase, bạn sẽ nhập mã nhận dạng gói hoặc tên gói Android để xác định một thuộc tính được hiển thị dưới dạng Mã ứng dụng trong các quy tắc của Remote Config.

Sử dụng thuộc tính này như sau:
  • Đối với nền tảng của Apple: Sử dụng CFBundleIdentifier của ứng dụng. Bạn có thể tìm thấy Mã nhận dạng gói trong thẻ Chung cho mục tiêu chính của ứng dụng trong Xcode.
  • Đối với Android: Sử dụng applicationId của ứng dụng. Bạn có thể tìm thấy applicationId trong tệp build.gradle(.kts) ở cấp ứng dụng.
Phiên bản ứng dụng Đối với giá trị chuỗi:
khớp chính xác,
chứa,
không chứa,
chứa biểu thức chính quy

Đối với giá trị số:
<, <=, =, !=, >, >=

Chỉ định (các) phiên bản ứng dụng mà bạn muốn nhắm đến.

Trước khi sử dụng quy tắc này, bạn phải sử dụng quy tắc Mã ứng dụng để chọn một ứng dụng Android/Apple liên kết với dự án Firebase của bạn.

Đối với nền tảng của Apple: Sử dụng CFBundleShortVersionString của ứng dụng.

Lưu ý: Đảm bảo ứng dụng Apple của bạn đang sử dụng SDK nền tảng Apple của Firebase phiên bản 6.24.0 trở lên, vì CFBundleShortVersionString không được gửi trong các phiên bản cũ hơn (xem ghi chú phát hành).

Đối với Android: Sử dụng versionName của ứng dụng.

Lưu ý: Các toán tử so sánh số (<, <=, =, !=, >, >=) chỉ hỗ trợ các phiên bản ngữ nghĩa số (chẳng hạn như 1.2.3). Các toán tử này không hỗ trợ hậu tố hoặc dấu gạch nối của bản phát hành trước (chẳng hạn như -beta hoặc -rc). Đối với các chuỗi phiên bản có hậu tố hoặc dấu gạch nối không phải số (chẳng hạn như 1.5-beta), hãy sử dụng toán tử chuỗi (chẳng hạn như chứa biểu thức chính quy, chứa hoặc khớp chính xác).

Phép so sánh chuỗi cho quy tắc này có phân biệt chữ hoa chữ thường. Khi sử dụng toán tử khớp chính xác, chứa, không chứa hoặc chứa biểu thức chính quy, bạn có thể chọn nhiều giá trị.

Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng các ký tự neo ^ và $ để so khớp phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu.

Số bản dựng Đối với giá trị chuỗi:
khớp chính xác,
chứa,
không chứa,
biểu thức chính quy

Đối với giá trị số:
=, ≠, >, ≥, <, ≤

Chỉ định (các) bản dựng của ứng dụng để nhắm mục tiêu.

Trước khi sử dụng quy tắc này, bạn phải sử dụng quy tắc Mã ứng dụng để chọn một ứng dụng Apple hoặc ứng dụng Android liên kết với dự án Firebase của bạn.

Toán tử này chỉ dành cho ứng dụng Apple và Android. Giá trị này tương ứng với CFBundleVersion của ứng dụng đối với Apple và versionCode đối với Android. Phép so sánh chuỗi cho quy tắc này có phân biệt chữ hoa chữ thường.

Khi sử dụng toán tử khớp chính xác, chứa, không chứa hoặc chứa biểu thức chính quy, bạn có thể chọn nhiều giá trị.

Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng ký tự neo ^ và $ để so khớp phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu.

Nền tảng == iOS
Android
Web
 
Hệ điều hành ==

Chỉ định (các) hệ điều hành cần nhắm đến.

Trước khi sử dụng quy tắc này, bạn phải sử dụng quy tắc Mã ứng dụng để chọn một Ứng dụng web được liên kết với dự án Firebase của bạn.

Quy tắc này đánh giá thành true cho một phiên bản ứng dụng web nhất định nếu hệ điều hành và phiên bản của hệ điều hành đó khớp với giá trị mục tiêu trong danh sách được chỉ định.
Trình duyệt ==

Chỉ định (các) trình duyệt cần nhắm mục tiêu.

Trước khi sử dụng quy tắc này, bạn phải sử dụng quy tắc Mã ứng dụng để chọn một Ứng dụng web được liên kết với dự án Firebase của bạn.

Quy tắc này sẽ đánh giá thành true cho một phiên bản ứng dụng web nhất định nếu trình duyệt và phiên bản của trình duyệt đó khớp với một giá trị mục tiêu trong danh sách được chỉ định.
Danh mục thiết bị là, không phải là di động Quy tắc này đánh giá xem thiết bị truy cập vào ứng dụng web của bạn là thiết bị di động hay không phải thiết bị di động (máy tính hoặc máy chơi trò chơi). Loại quy tắc này chỉ dành cho ứng dụng web.
Ngôn ngữ nằm trong Chọn một hoặc nhiều ngôn ngữ. Quy tắc này đánh giá thành true cho một phiên bản ứng dụng nhất định nếu phiên bản ứng dụng đó được cài đặt trên một thiết bị sử dụng một trong các ngôn ngữ được liệt kê.
Quốc gia/Vùng nằm trong Chọn một hoặc nhiều khu vực hoặc quốc gia. Quy tắc này đánh giá thành true cho một phiên bản ứng dụng nhất định nếu phiên bản đó nằm ở bất kỳ khu vực hoặc quốc gia nào trong danh sách. 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).
(Các) đối tượng người dùng Bao gồm ít nhất một Chọn một hoặc nhiều đối tượng trong danh sách Google Analytics đối tượng mà bạn đã thiết lập cho dự án của mình.

Quy tắc này yêu cầu quy tắc Mã ứng dụng để chọn một ứng dụng liên kết với dự án Firebase của bạn.

Lưu ý: Vì nhiều đối tượng Analytics được xác định theo sự kiện hoặc thuộc tính người dùng (có thể dựa trên hành động của người dùng ứng dụng), nên có thể mất một chút thời gian để quy tắc Người dùng trong đối tượng có hiệu lực đối với một phiên bản ứng dụng nhất định. Điều này có nghĩa là ngay cả khi người dùng đủ điều kiện về mặt kỹ thuật cho một đối tượng, nếu Analytics chưa thêm người dùng vào đối tượng khi fetchAndActivate() được thực thi, thì người dùng sẽ không khớp với điều kiện.

Thuộc tính người dùng Đối với giá trị chuỗi:
chứa,
không chứa,
khớp chính xác,
chứa biểu thức chính quy

Đối với giá trị số:
=, ≠, >, ≥, <, ≤

Lưu ý: Trên ứng dụng, bạn chỉ có thể đặt giá trị chuỗi cho thuộc tính người dùng. Đối với các điều kiện sử dụng toán tử số, Remote Config sẽ chuyển đổi giá trị của thuộc tính người dùng tương ứng thành số nguyên/số thực.
Chọn trong danh sách các thuộc tính người dùng Google Analytics có sẵn. Để tìm hiểu cách sử dụng thuộc tính người dùng nhằm tuỳ chỉnh ứng dụng cho các phân khúc rất cụ thể trong cơ sở người dùng, hãy xem bài viết Remote Config và thuộc tính người dùng.

Để tìm hiểu thêm về thuộc tính người dùng, hãy xem các hướng dẫn sau:

Khi sử dụng toán tử khớp chính xác, chứa, không chứa hoặc chứa biểu thức chính quy, bạn có thể chọn nhiều giá trị.

Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng ký tự neo ^ và $ để so khớp phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu.

Lưu ý: Bạn không thể sử dụng các thuộc tính người dùng được thu thập tự động khi tạo điều kiện Remote Config.
Người dùng theo tỷ lệ phần trăm ngẫu nhiên Thanh trượt (trong bảng điều khiển của Firebase). API REST sử dụng các toán tử <=, > và between). 0-100

Sử dụng trường này để áp dụng thay đổi cho một mẫu ngẫu nhiên gồm các phiên bản ứng dụng (với kích thước mẫu nhỏ đến mức 0,0001%), sử dụng tiện ích thanh trượt để phân đoạn người dùng được xáo trộn ngẫu nhiên (phiên bản ứng dụng) thành các nhóm.

Mỗi phiên bản ứng dụng được liên kết liên tục với một số nguyên hoặc số thập phân ngẫu nhiên, theo một hạt giống được xác định trong dự án đó.

Một quy tắc sẽ sử dụng khoá mặc định (hiển thị dưới dạng Chỉnh sửa hạt giống trong bảng điều khiển Firebase) trừ phi bạn sửa đổi giá trị của hạt giống. Bạn có thể đặt lại một quy tắc để sử dụng khoá mặc định bằng cách xoá trường Seed (Hạt giống).

Để giải quyết nhất quán các phiên bản ứng dụng giống nhau trong phạm vi tỷ lệ phần trăm nhất định, hãy sử dụng cùng một giá trị hạt giống trên các điều kiện. Hoặc chọn một nhóm thực thể ứ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 bằng cách chỉ định một hạt giống mới.

Ví dụ: để tạo hai điều kiện có liên quan, mỗi điều kiện áp dụng cho 5% người dùng không trùng lặp của một ứng dụng, bạn có thể định cấu hình một điều kiện để khớp với tỷ lệ phần trăm từ 0% đến 5% và định cấu hình một điều kiện khác để khớp với phạm vi từ 5% đến 10%. Để cho phép một số người dùng xuất hiện ngẫu nhiên trong cả hai nhóm, hãy sử dụng các giá trị hạt giống khác nhau cho các quy tắc trong mỗi điều kiện.

Phân khúc đã nhập nằm trong Chọn một hoặc nhiều phân khúc đã nhập. Quy tắc này yêu cầu bạn phải thiết lập phân khúc tuỳ chỉnh được nhập.
Ngày/giờ Trước, Sau Ngày và giờ được chỉ định, theo múi giờ của thiết bị hoặc múi giờ được chỉ định, chẳng hạn như "(GMT+11) Giờ Sydney". So sánh thời gian hiện tại với thời gian tìm nạp của thiết bị.
Mở lần đầu Trước, Sau

Nhắm đến người dùng dựa trên lần đầu tiên họ mở ứng dụng của bạn:

  • Chọn Người dùng mới để nhắm đến những người dùng mở ứng dụng của bạn lần đầu tiên sau một ngày và giờ cụ thể trong tương lai.
  • Chọn Phạm vi thời gian để nhắm đến những người dùng mở ứng dụng của bạn lần đầu tiên trong phạm vi trước hoặc sau ngày và giờ bạn chỉ định. Kết hợp các điều kiện Trước và Sau để nhắm đến người dùng trong một phạm vi thời gian cụ thể.

Bạn có thể nhắm mục tiêu người dùng theo lần mở đầu tiên sau khi chọn một ứng dụng Android, iOS hoặc ứng dụng web.

Yêu cầu các SDK sau:

  • Firebase SDK cho Google Analytics
  • SDK nền tảng Apple phiên bản 9.0.0 trở lên hoặc SDK Android phiên bản 21.1.1 trở lên (Firebase BoM phiên bản 30.3.0 trở lên) và SDK JavaScript phiên bản 12.8.0 trở lên.

Analytics cũng phải được bật trên ứng dụng trong sự kiện mở lần đầu.

Mã cài đặt nằm trong Chỉ định một hoặc nhiều Mã cài đặt (tối đa 50) để nhắm mục tiêu. Quy tắc này đánh giá thành true cho một lượt cài đặt nhất định nếu mã nhận dạng của lượt cài đặt đó nằm trong danh sách giá trị được phân tách bằng dấu phẩy.

Để tìm hiểu cách lấy mã nhận dạng lượt cài đặt, hãy xem bài viết Lấy giá trị nhận dạng ứng dụng.
Người dùng đã tồn tại (không có toán tử) Nhắm đến tất cả người dùng của mọi ứng dụng trong dự án hiện tại.

Sử dụng quy tắc điều kiện này để so khớp tất cả người dùng trong dự án, bất kể ứng dụng hay nền tảng.

Tín hiệu tuỳ chỉnh Đối với giá trị chuỗi:
chứa,
không chứa,
khớp chính xác,
chứa biểu thức chính quy

Đối với giá trị số:
=, ≠, >, ≥, <, ≤

Đối với giá trị phiên bản:
=, ≠, >, ≥, <, ≤

Phép so sánh chuỗi cho quy tắc này có phân biệt chữ hoa chữ thường. Khi sử dụng toán tử khớp chính xác, chứa, không chứa hoặc chứa biểu thức chính quy, bạn có thể chọn nhiều giá trị. Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng ký tự neo ^ và $ để so khớp phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu.

Các loại dữ liệu sau đây được hỗ trợ cho môi trường ứng dụng:
  • iOS: int, double
  • Android: int, long, double
  • Web: số

Chữ số đại diện cho (các) số phiên bản cần so khớp (ví dụ: 2.1.0).

Để biết thêm thông tin về các điều kiện tín hiệu tuỳ chỉnh và biểu thức điều kiện cần sử dụng, hãy xem bài viết Điều kiện tín hiệu tuỳ chỉnh và Các phần tử dùng để tạo điều kiện.

Tham số và điều kiện tìm kiếm

Bạn có thể tìm khoá tham số, giá trị tham số và điều kiện của dự án trong bảng điều khiển Firebase bằng cách sử dụng hộp tìm kiếm ở đầu trang DevOps & Engagement (DevOps và Tương tác) > Remote Config (Cấu hình từ xa) > Parameters (Tham số).

Giới hạn về thông số và điều kiện

Trong một dự án Firebase, bạn có thể có tối đa 3.000 tham số và tối đa 2.000 điều kiện. Khoá tham số có thể dài tối đa 256 ký tự, phải bắt đầu bằng dấu gạch dưới hoặc ký tự chữ cái tiếng Anh (A-Z, a-z) và cũng có thể bao gồm số. Tổng độ dài của chuỗi giá trị tham số trong một dự án không được vượt quá 1.000.000 ký tự. Ngoài ra, các quy tắc điều kiện dựa trên thuộc tính người dùng có thể bao gồm tối đa 100 giá trị thuộc tính người dùng. Để xem danh sách đầy đủ các giới hạn, hãy xem phần Hạn mức và giới hạn.

Xem các thay đổi đối với thông số và điều kiện

Bạn có thể xem những thay đổi mới nhất đối với mẫu Remote Config trong bảng điều khiển Firebase. Đối với từng tham số và điều kiện riêng lẻ, bạn có thể:

  • Xem tên của người dùng đã sửa đổi thông số hoặc điều kiện gần đây nhất.

  • Nếu thay đổi xảy ra trong cùng một ngày, hãy xem số phút hoặc số giờ đã trôi qua kể từ khi thay đổi được xuất bản cho mẫu Remote Config đang hoạt động.

  • Nếu thay đổi xảy ra một hoặc nhiều ngày trước, hãy xem ngày mà thay đổi được xuất bản lên mẫu Remote Config đang hoạt động.

Nhật ký thay đổi cho tham số

Trong bảng điều khiển Firebase, hãy chuyển đến trang DevOps & Engagement (DevOps và Mức độ tương tác) > Remote Config (Cấu hình từ xa) > Parameters (Tham số). Cột Xuất bản gần đây nhất cho biết người dùng gần đây nhất đã sửa đổi từng tham số và ngày xuất bản gần đây nhất cho thay đổi đó:

  • Để xem siêu dữ liệu thay đổi cho các thông số được nhóm, hãy mở rộng nhóm thông số.

  • Để sắp xếp theo thứ tự tăng dần hoặc giảm dần theo ngày xuất bản, hãy nhấp vào nhãn cột Lần xuất bản gần đây nhất.

Nhật ký thay đổi cho điều kiện

Trong bảng điều khiển Firebase, hãy chuyển đến trang DevOps & Engagement (DevOps và mức độ tương tác) > Remote Config (Cấu hình từ xa) > Conditions (Điều kiện). Bạn có thể xem người dùng gần đây nhất đã sửa đổi điều kiện và ngày họ sửa đổi điều kiện đó bên cạnh mục Lần sửa đổi gần đây nhất trong mỗi điều kiện.

Các bước tiếp theo

Để định cấu hình dự án và ứng dụng Firebase nhằm sử dụng Remote Config, hãy xem bài viết Bắt đầu sử dụng Firebase Remote Config.