Chiến lược tải Cấu hình từ xa Firebase

Cấu hình từ xa Firebase giúp bạn linh hoạt lựa chọn cách thức và thời điểm tìm nạp các giá trị mới từ máy chủ và kích hoạt các giá trị đó trong ứng dụng của mình, cho phép bạn đảm bảo trải nghiệm người dùng cuối có chất lượng bằng cách kiểm soát thời gian hiển thị các thay đổi về cấu hình. Bạn có thể tìm nạp các giá trị mới khi khởi chạy ứng dụng bằng cách sử dụng fetchAndActivate() và sử dụng Cấu hình từ xa theo thời gian thực làm phương thức bổ sung để tự động tìm nạp các giá trị thông số mới nhất sau khi xuất bản phiên bản mới của Cấu hình từ xa.

Hướng dẫn này xem xét một số chiến lược tải thảo luận những yếu tố chính cần cân nhắc để chọn lựa chọn tốt nhất cho ứng dụng của bạn.

Chiến lược 1: Tìm nạp và kích hoạt khi tải

Trong chiến lược này, ứng dụng của bạn sẽ gọi fetchAndActivate() khi ứng dụng đầu tiên khởi động để tìm nạp các giá trị mới từ Cấu hình từ xa và kích hoạt các giá trị đó ngay khi khi chúng tải xong. Phương pháp tiếp cận đơn giản này phù hợp cho việc định cấu hình các thay đổi không gây ra bất kỳ thay đổi lớn về hình ảnh nào trong giao diện người dùng. Phải trong mọi trường hợp giao diện người dùng có thể thay đổi đáng kể trong khi người dùng vẫn đang sử dụng ứng dụng đó.

Sau khi gọi fetchAndActivate(), ứng dụng có thể bắt đầu lắng nghe thông số cập nhật giá trị theo thời gian thực bằng cách gọi addOnConfigUpdateListener. Phương thức này bắt đầu theo dõi mọi nội dung cập nhật phía máy chủ đối với các giá trị tham số, hãy tìm nạp các giá trị đó sau đó gọi trình nghe. Một chiến lược đơn giản là kích hoạt các giá trị trong trình nghe. Tuy nhiên, như đã đề cập đối với fetchAndActivate(), nên tránh kích hoạt ngay lập tức đối với các giao diện người dùng nhạy cảm.

Chiến lược 2: Kích hoạt phía sau màn hình tải

Để khắc phục vấn đề tiềm ẩn về giao diện người dùng gặp phải trong chiến lược 1, bạn có thể dựa vào trên màn hình tải. Thay vì khởi động ứng dụng ngay lập tức, hãy hiện trạng thái đang tải màn hình và gọi fetchAndActivate trong trình xử lý hoàn thành. Ngay sau đó, sử dụng lại một lệnh gọi lại hoặc thông báo – loại bỏ màn hình tải và cho phép người dùng bắt đầu tương tác ứng dụng của bạn.

Nếu sử dụng chiến lược này, bạn nên thêm thời gian chờ vào quá trình tải màn hình. Cấu hình từ xa Thời gian chờ 1 phút có thể quá dài đối với trải nghiệm khởi động ứng dụng chất lượng đối với người dùng.

Theo dõi thông tin cập nhật theo thời gian thực Cấu hình từ xa bằng cách gọi addOnConfigUpdateListener phù hợp với chiến lược này. Thêm trình nghe khi màn hình tải sẽ hiển thị, hãy sử dụng activate() tại một hoặc nhiều điểm trong ứng dụng của bạn mà trong đó giá trị Cấu hình từ xa sẽ không gây ra những thay đổi đáng kể về hình ảnh.

Chiến lược 3: Tải giá trị mới cho lần khởi động tiếp theo

Chiến lược hiệu quả là tải các giá trị cấu hình mới vào kích hoạt vào lần khởi động tiếp theo của ứng dụng. Trong chiến lược này, ứng dụng của bạn sẽ kích hoạt các giá trị được tìm nạp khi khởi động trước khi tìm nạp các giá trị mới, hoạt động trên giả định rằng mã đó có thể đã được tìm nạp – nhưng chưa được kích hoạt — các giá trị cấu hình mới. Thứ tự các thao tác của chiến lược này là:

  1. Khi khởi động, hãy kích hoạt ngay các giá trị đã tìm nạp trước đó. Điều này áp dụng bất kỳ các giá trị bạn đã tải xuống từ máy chủ trong phiên trước đó và gần như tức thì.
  2. Trong khi người dùng tương tác với ứng dụng, hãy bắt đầu lệnh gọi không đồng bộ đến tìm nạp các giá trị mới theo khoảng thời gian tìm nạp tối thiểu mặc định và thêm một trình nghe cập nhật cấu hình theo thời gian thực. Trình nghe theo thời gian thực sẽ tự động tìm nạp mọi giá trị được xuất bản trên máy chủ trong khi ứng dụng của bạn đang chạy. Các bản cập nhật theo thời gian thực bỏ qua chế độ cài đặt khoảng thời gian tìm nạp tối thiểu.
  3. Trong trình xử lý hoàn thành hoặc lệnh gọi lại cho lệnh gọi tìm nạp, bạn không cần làm gì cả. Ứng dụng của bạn sẽ giữ các giá trị đã tải xuống cho đến khi bạn kích hoạt các giá trị đó vào lần tiếp theo ứng dụng khởi động.

Với chiến lược này, thời gian chờ của người dùng được giảm thiểu đáng kể. Kết hợp tìm nạp và chiến lược trình nghe theo thời gian thực thông qua các lệnh gọi activate() nếu cần trong vòng đời của ứng dụng sẽ đảm bảo người dùng có các giá trị mới nhất từ Cấu hình từ xa khi chúng tương tác với ứng dụng của bạn.

Đang tải chiến lược chống

Như bạn có thể đã hiểu từ nội dung thảo luận ở trên về ưu và nhược điểm của việc tải, có một số kiểu sử dụng cần tránh.

  • Không cập nhật hoặc chuyển đổi các thành phần của giao diện người dùng trong khi người dùng đang xem hoặc tương tác với ứng dụng — trừ khi bạn có lý do quan trọng về ứng dụng hoặc hoạt động kinh doanh để làm điều đó, chẳng hạn như xoá các lựa chọn liên quan đến một chương trình khuyến mãi vừa đã kết thúc.
  • Không gửi số lượng lớn các yêu cầu tìm nạp đồng thời vì điều này có thể dẫn đến trong máy chủ điều tiết ứng dụng của bạn. Nếu cần thường xuyên tìm nạp các bản cập nhật, sử dụng Cấu hình từ xa theo thời gian thực. Trong khi rủi ro bị điều tiết thấp trong hầu hết các tình huống phát hành công khai. Đây có thể là một vấn đề trong quá trình phát triển tích cực—và Cấu hình từ xa theo thời gian thực được thiết kế cho trường hợp sử dụng này. Hãy xem phần điều tiết hướng dẫn.
  • Không dựa vào kết nối mạng để lấy giá trị Cấu hình từ xa. Đặt Nên trong ứng dụng mặc định để ứng dụng của bạn luôn hoạt động như dự kiến. Bạn có thể định kỳ đồng bộ hoá các giá trị mặc định của phần phụ trợ Cấu hình từ xa và ứng dụng sử dụng mẫu đã tải xuống mặc định.

Các bước tiếp theo

Ba chiến lược cơ bản này không bao gồm danh sách hoàn chỉnh để tải giá trị cấu hình. Tùy thuộc vào nhu cầu của mình, bạn có thể nghĩ ra những chiến lược phức tạp hơn nhiều.

Hãy xem tài liệu tham khảo API cho nền tảng của bạn để tìm hiểu thêm về để tìm nạp và kích hoạt các giá trị cấu hình.