Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Bắt đầu với Cấu hình từ xa Firebase

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.


Bạn có thể sử dụng Cấu hình từ xa Firebase để xác định các tham số trong ứng dụng của mình và cập nhật giá trị của chúng trong đám mây, cho phép bạn sửa đổi giao diện và hành vi của ứng dụng mà không cần phân phối bản cập nhật ứng dụng.

Thư viện Cấu hình từ xa được dùng để lưu trữ các giá trị tham số mặc định trong ứng dụng, tìm nạp các giá trị tham số được cập nhật từ chương trình phụ trợ Cấu hình từ xa và kiểm soát thời điểm cung cấp các giá trị đã tìm nạp cho ứng dụng của bạn. Để tìm hiểu thêm, hãy xem Chiến lược tải cấu hình từ xa .

Hướng dẫn này hướng dẫn bạn qua các bước để bắt đầu và cung cấp một số mã mẫu, tất cả đều có sẵn để sao chép hoặc tải xuống từ kho lưu trữ GitHub firebase/quickstart-unity .

Bước 1: Thêm Remote Config vào ứng dụng của bạn

Trước khi bạn có thể sử dụng Remote Config , bạn cần phải:

  • Đăng ký dự án Unity của bạn và định cấu hình để sử dụng Firebase.

    • Nếu dự án Unity của bạn đã sử dụng Firebase, thì dự án đó đã được đăng ký và định cấu hình cho Firebase.

    • Nếu chưa có dự án Unity, bạn có thể tải xuống ứng dụng mẫu .

  • Thêm SDK Unity của Firebase (cụ thể là FirebaseRemoteConfig.unitypackage ) vào dự án Unity của bạn.

Lưu ý rằng việc thêm Firebase vào dự án Unity của bạn liên quan đến các tác vụ cả trong bảng điều khiển Firebase và trong dự án Unity đang mở của bạn (ví dụ: bạn tải xuống các tệp cấu hình Firebase từ bảng điều khiển, sau đó di chuyển chúng vào dự án Unity của bạn).

Bước 2: Đặt giá trị thông số mặc định trong ứng dụng

Bạn có thể đặt các giá trị tham số mặc định trong ứng dụng trong đối tượng Cấu hình từ xa để ứng dụng của bạn hoạt động như dự kiến ​​trước khi kết nối với phần phụ trợ Cấu hình từ xa và để các giá trị mặc định khả dụng nếu không có giá trị nào được đặt trong phần phụ trợ.

Để thực hiện việc này, hãy tạo một từ điển chuỗi và điền vào đó các cặp khóa/giá trị đại diện cho các giá trị mặc định mà bạn muốn thêm. Nếu bạn đã định cấu hình các giá trị tham số phụ trợ Cấu hình từ xa, bạn có thể tải xuống tệp chứa các cặp khóa/giá trị này và sử dụng tệp đó để tạo từ điển chuỗi của mình. Để biết thêm thông tin, hãy xem Tải xuống các giá trị mặc định của mẫu Cấu hình Từ xa .

(Các thuộc tính không phải chuỗi sẽ được chuyển đổi thành loại của thuộc tính khi SetDefaultsAsync() được gọi).

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

Bước 3: Nhận các giá trị tham số để sử dụng trong ứng dụng của bạn

Bây giờ bạn có thể lấy các giá trị tham số từ đối tượng Cấu hình từ xa. Nếu bạn đặt các giá trị trong phần phụ trợ Cấu hình từ xa, tìm nạp chúng rồi kích hoạt chúng, thì các giá trị đó sẽ có sẵn cho ứng dụng của bạn. Nếu không, bạn sẽ nhận được các giá trị thông số trong ứng dụng được định cấu hình bằng cách sử dụng SetDefaultsAsync() .

Để nhận các giá trị này, hãy sử dụng GetValue() , cung cấp khóa tham số làm đối số. Điều này trả về một ConfigValue , có các thuộc tính để chuyển đổi giá trị thành các loại cơ sở khác nhau.

Bước 4: Kết nối ứng dụng của bạn trong bảng điều khiển Firebase

Trong bảng điều khiển Firebase , hãy thêm ứng dụng của bạn vào dự án Firebase.

Bước 5: Đặt giá trị tham số

  1. Trong bảng điều khiển Firebase , hãy mở dự án của bạn.
  2. Chọn Cấu hình từ xa từ menu để xem bảng điều khiển Cấu hình từ xa.
  3. Xác định các tham số có cùng tên với các tham số mà bạn đã xác định trong ứng dụng của mình. Đối với mỗi tham số, bạn có thể đặt giá trị mặc định (giá trị này cuối cùng sẽ ghi đè giá trị mặc định trong ứng dụng) và giá trị có điều kiện. Để tìm hiểu thêm, hãy xem Điều kiện và thông số cấu hình từ xa .

Bước 6: Tìm nạp và kích hoạt các giá trị (nếu cần)

Để tìm nạp các giá trị tham số từ phần phụ trợ Cấu hình từ xa, hãy gọi phương thức FetchAsync() . Bất kỳ giá trị nào bạn đặt trên chương trình phụ trợ đều được tìm nạp và lưu vào bộ nhớ cache trong đối tượng Cấu hình từ xa.

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

Các giá trị được tìm nạp qua FetchAsync() được lưu vào bộ nhớ cache cục bộ khi quá trình tìm nạp hoàn tất, nhưng không khả dụng cho đến khi ActivateFetched() được gọi. Do FetchAsync() thực thi không đồng bộ nên điều này cho phép bạn đảm bảo rằng các giá trị mới không được áp dụng trong quá trình tính toán hoặc vào những thời điểm khác có thể gây ra sự cố hoặc hành vi lạ.

Bước 7: (Tùy chọn) Kích hoạt chế độ nhà phát triển

Để bật chế độ nhà phát triển, chế độ này có thể được sử dụng để tắt điều tiết trong quá trình phát triển, bạn có thể sử dụng thuộc tính FirebaseRemoteConfig.Setting , đặt một ConfigSettings mới với IsDeveloperMode được đặt thành true.

Next steps

If you haven't already, explore the Remote Config use cases , and take a look at some of the key concepts and advanced strategies documentation, including: