Đây không hẳn là cách tốt nhất , nhưng nó có thể phù hợp với bạn.
Bạn có thể viết một ứng dụng bootstrap (ala là trình khởi chạy World of Warcraft, nếu bạn đã chơi WoW). Bootstrap đó chịu trách nhiệm kiểm tra các bản cập nhật.
- Nếu có bản cập nhật, nó sẽ cung cấp cho người dùng, xử lý quá trình tải xuống, cài đặt, v.v.
- Nếu ứng dụng được cập nhật, nó sẽ cho phép người dùng khởi chạy ứng dụng
- Theo tùy chọn, bạn có thể cho phép người dùng khởi chạy ứng dụng, ngay cả khi nó chưa được cập nhật
Bằng cách này, bạn không phải lo lắng về việc buộc thoát ứng dụng của mình.
Nếu ứng dụng của bạn dựa trên web và nếu điều quan trọng là chúng phải có một ứng dụng khách cập nhật, thì bạn cũng có thể kiểm tra phiên bản trong khi ứng dụng chạy. Bạn có thể thực hiện chúng theo các khoảng thời gian, trong khi thực hiện giao tiếp bình thường với máy chủ (một số hoặc tất cả các cuộc gọi) hoặc cả hai.
Đối với sản phẩm mà tôi đã làm việc gần đây, chúng tôi đã kiểm tra phiên bản khi khởi chạy (không có ứng dụng bộ đệm khởi động, nhưng trước khi cửa sổ chính xuất hiện) và trong khi gọi đến máy chủ. Khi máy khách đã lỗi thời, chúng tôi dựa vào việc người dùng để thoát theo cách thủ công, nhưng cấm mọi hành động chống lại máy chủ.
Xin lưu ý rằng tôi không biết liệu Java có thể gọi mã giao diện người dùng hay không trước khi bạn hiển thị cửa sổ chính của mình. Chúng tôi đã sử dụng C # / WPF.