Hiểu cấu hình từ xa thời gian thực


Cấu hình từ xa theo thời gian thực cho phép bạn nhận các khóa và giá trị tham số cập nhật ngay khi chúng được xuất bản trên máy chủ. Điều này cho phép bạn cập nhật nhanh chóng mọi loại thuộc tính ứng dụng được kiểm soát bằng giá trị tham số Cấu hình từ xa. Với các bản cập nhật Cấu hình từ xa theo thời gian thực, bạn có thể:

  • Giảm rủi ro bằng cách triển khai dần dần các tính năng cho người dùng được nhắm mục tiêu và thực hiện khôi phục khẩn cấp nếu cần.
  • Tăng mức độ tương tác của người dùng bằng cách nhanh chóng tùy chỉnh trải nghiệm người dùng khi họ sử dụng ứng dụng. Ví dụ: bạn có thể cập nhật biểu ngữ và đưa ra khuyến khích cho người dùng phù hợp với thuộc tính người dùng cụ thể của Google Analytics hoặc tự động điều chỉnh độ khó của trò chơi cho nhóm người chơi.
  • Giảm sự phụ thuộc của bản dựng và tăng năng suất của nhà phát triển: Sử dụng các tham số Cấu hình từ xa làm cờ tính năng để hiển thị chức năng cho nhóm thử nghiệm và phát triển của bạn, đồng thời ẩn chức năng đó với người dùng trong quá trình sản xuất.

Để tìm hiểu thêm về những cách bạn có thể sử dụng Cấu hình từ xa, hãy xem Bạn có thể làm gì với Cấu hình từ xa?

Trong hướng dẫn này, bạn sẽ:

  • Tìm hiểu thêm về mối quan hệ máy khách-máy chủ hỗ trợ cập nhật theo thời gian thực.
  • Hiểu cách hoạt động của chức năng thời gian thực trong SDK.
  • Tìm hiểu cách sử dụng các bản cập nhật theo thời gian thực để luôn cập nhật cấu hình ứng dụng của bạn.

Kết nối máy khách-máy chủ thời gian thực

Khi triển khai Cấu hình từ xa theo thời gian thực trong ứng dụng của mình, bạn sẽ tạo một trình nghe theo thời gian thực mở kết nối HTTP tới phần phụ trợ Cấu hình từ xa. Yêu cầu bao gồm phiên bản cấu hình hiện được lưu vào bộ nhớ đệm trên thiết bị. Máy chủ Cấu hình từ xa theo thời gian thực sử dụng thông báo vô hiệu để báo hiệu cho ứng dụng khi cần tìm nạp phiên bản mới hơn của cấu hình phía máy chủ.

Nếu máy chủ có phiên bản mới hơn, nó sẽ gửi tín hiệu vô hiệu ngay lập tức. Nếu nó không có phiên bản mới hơn, nó sẽ giữ kết nối mở và đợi cho đến khi phiên bản đó được xuất bản trên máy chủ. Khi SDK khách nhận được tín hiệu không hợp lệ, nó sẽ tự động tìm nạp tín hiệu đó rồi gọi lệnh gọi lại trình nghe đã đăng ký khi bạn mở kết nối trình nghe. Quá trình tìm nạp này tương tự như lệnh gọi tìm nạp mà bạn có thể thực hiện với SDK nhưng bỏ qua mọi cài đặt bộ nhớ đệm hoặc khoảng thời gian minimumFetchInterval . Kết nối máy khách-máy chủ được duy trì trong khi ứng dụng ở nền trước.

Quy trình làm việc máy khách-máy chủ Cấu hình từ xa theo thời gian thực

Vì kết nối máy khách-máy chủ được thực hiện qua HTTP nên nó không yêu cầu bất kỳ sự phụ thuộc nào vào các thư viện khác.

Lắng nghe thông tin cập nhật

Các bản cập nhật theo thời gian thực bổ sung cho các cuộc gọi fetch nạp Cấu hình từ xa. Chúng tôi khuyên bạn nên gọi tìm nạp khi ứng dụng của bạn khởi động (hoặc đôi khi trong vòng đời ứng dụng của bạn) và lắng nghe các bản cập nhật Cấu hình từ xa theo thời gian thực trong phiên người dùng để đảm bảo rằng bạn có các giá trị mới nhất ngay khi chúng được xuất bản trên máy chủ.

Để nghe các bản cập nhật, hãy gọiaddOnConfigUpdateListener ,triển khai lệnh gọi lại được gọi bất cứ khi nào có bản cập nhật Cấu hình từ xa trong ứng dụng . Phía sau, cuộc gọi này bắt đầu lắng nghe các bản cập nhật từ máy chủ Cấu hình từ xa. Để tìm hiểu thêm về mối quan hệ client-server, hãy xem phần trước .

Lệnh gọi lại thường là nơi thích hợp để sử dụng activate nhằm cung cấp các tham số cấu hình đã cập nhật cho ứng dụng của bạn. Xem Chiến lược tải cấu hình từ xa Firebase để biết các chiến lược bổ sung nhằm kích hoạt các giá trị tham số khi bạn đang sử dụng Cấu hình từ xa theo thời gian thực.

Kích hoạt có chọn lọc các giá trị tham số

Khi bạn gọiaddOnConfigUpdateListener ,bạn có thể chờ thay đổi và kích hoạt nó.

Lệnh gọi lại onUpdate được gọi khi cả phiên bản mới của mẫu đã được tìm nạp tự động và khi phiên bản mới đó có thay đổi đối với các giá trị tham số hiện được kích hoạt trong ứng dụng.

Những lệnh gọi lại này được gọi bằng tham số configUpdate . configUpdate chứaupdatedKeyslà tập hợp các khóa tham số đã thay đổi bắt đầu cập nhật theo thời gian thực và bao gồm các mục sau:

  • Các khóa tham số đã được thêm hoặc xóa
  • Các khóa tham số có giá trị đã thay đổi
  • Các khóa tham số có siêu dữ liệu đã thay đổi (ví dụ: thông tin cá nhân hóa Cấu hình từ xa)
  • Các khóa tham số có nguồn giá trị đã thay đổi (ví dụ: giá trị mặc định trong ứng dụng đang cập nhật thành giá trị phía máy chủ)

Nếu đang sử dụng trình nghe thời gian thực trong một chế độ xem cụ thể trong ứng dụng của mình, bạn có thể kiểm tra xem các thông số liên quan đến chế độ xem đó có thay đổi hay không trước khi kích hoạt.

Đôi khi, quá trình tìm nạp (được bắt đầu khi bạn gọi phương thức fetch hoặc bằng Cấu hình từ xa theo thời gian thực) không dẫn đến bản cập nhật cho máy khách. Trong những trường hợp này, phương thứconUpdatesẽ không được gọi.

Thêm và xóa người nghe

addOnConfigUpdateListenerlà điểm truy cập chính cho Cấu hình từ xa theo thời gian thực. Việc gọi trình nghe này lần đầu tiên trong vòng đời ứng dụng của bạn sẽ mở kết nối tới chương trình phụ trợ. Các cuộc gọi tiếp theo sẽ sử dụng lại cùng một kết nối, ghép kênh thông báo vô hiệu được mô tả trong kết nối máy khách-máy chủ thời gian thực .

Cuộc gọi trả về một "đăng ký người nghe", có phương thức gọi làremove .

Để dừng nghe, lưu trữ tham chiếu đến đăng ký người nghe. Gọi remove để dừng nghe tại đăng ký này. Nếu đó là người nghe đã đăng ký duy nhất, việc gọi remove sẽ đóng kết nối thời gian thực với máy chủ.

Mặc dù bạn có thể ngừng nghe các bản cập nhật theo cách thủ công nhưng điều này thường không cần thiết. Cấu hình từ xa theo thời gian thực tự động dừng nghe các bản cập nhật khi ứng dụng chạy ở chế độ nền và khởi động lại khi ứng dụng được chạy trên nền trước.

Bước tiếp theo

Hãy xem Bắt đầu với Cấu hình từ xa Firebase để định cấu hình Cấu hình từ xa và bắt đầu lắng nghe các bản cập nhật trong thời gian thực .