2010-12-27 46 views
5

Tôi đang sử dụng Qt để xây dựng một ứng dụng GUI nền tảng chéo (Windows và Mac). Tôi muốn có thể cập nhật ứng dụng một cách hiệu quả và tự động mỗi khi có bản vá mới.Tự động cập nhật nền tảng chéo

Tôi đã xem this bài đăng đã cho phép tôi xem WyBuild. Nó trông tuyệt vời và có lẽ những gì tôi có thể sẽ chỉ sử dụng cho phiên bản Windows nhưng những gì về Mac? Một số lựa chọn thay thế có sẵn cho tôi là gì?

Trả lời

2

Đối với máy Mac, lựa chọn tốt nhất là Sparkle được sử dụng bởi WebKit, Adium, Cyberduck và hơn thế nữa. Nó chỉ dành cho Mac nhưng tôi đoán vấn đề bản địa trên Mac rất nhiều.

1

Không quen thuộc với WyBuild nên không thể nhận xét. Sparkle là một lựa chọn tốt nhưng poster thích một ứng dụng duy nhất cho cả hai nền tảng. BitRock InstallBuilder chứa một phần mềm tự động viết bằng Qt có thể được sử dụng độc lập (từ chối trách nhiệm, tôi là nhà phát triển BitRock gốc). Nó là một ứng dụng thương mại, nhưng chúng tôi có giấy phép miễn phí cho các dự án mã nguồn mở.

4

Tôi vừa bắt đầu phát triển máy tự động dựa trên Qt được gọi là Fervor cho các nhu cầu của riêng tôi. Bạn có thể thử nó ra, đóng góp được nhiều hơn chào đón quá.

1

Updatenode dường như cung cấp giải pháp đa nền tảng Qt thực.

Nó đi kèm với một ứng dụng khách dựng sẵn cho Windows, Mac và Linux. Dịch vụ trực tuyến cho phép bạn quản lý các bản cập nhật rất dễ dàng và có thể thấy các biểu đồ tốt về việc sử dụng ứng dụng của bạn.

+0

Đây có thể là một GPL đẹp được cấp phép QT khách hàng, nhưng bạn buộc phải sử dụng API Updatenode cho các sản phẩm thương mại. Nó chỉ miễn phí cho các sản phẩm nguồn mở. Xem https://www.updatenode.com/main#pricing –

0

Điều này có thể hiển nhiên, nhưng đối với Linux, bạn có thể sử dụng trình quản lý gói được tích hợp sẵn. Ví dụ: apt-get, yum, pacman hoặc bạn có gì.

1

Và đây một một trong các khả năng:

Sử dụng Qt Installer Framework: Nó cung cấp các trình cài đặt cho Windows/Linux/Mac với một xây dựng trong updater. Nếu bạn cần một ví dụ - MaintenanceTool của Qt-Installation của bạn sử dụng khung công tác.

Để có được một tính năng tự động cập nhật từ nó, tất cả các bạn cần làm là:

  • Tạo một trình cài đặt trực tuyến (Chỉ cần kiểm tra tài liệu, nó không phải là khó)
  • Sử dụng maintenancetool trong ứng dụng của bạn để kiểm tra các bản cập nhật.
    • Cây gậy này được thực hiện bằng cách sử dụng QtAutoUpdater của tôi. Đến đây để biết thêm thông tin về toàn bộ quá trình
    • Nếu bản cập nhật mới có sẵn, các maintenancetool có thể được bắt đầu trong chế độ cập nhật để cài đặt bản cập nhật
  • Cập nhật kho trực tuyến - và cập nhật của bạn được ra ngoài.

Ưu điểm:

  • Installer và cập nhật trong 1 công cụ - điều này có nghĩa là ít công việc cho bạn
  • Dễ sử dụng (có hoặc không có thư viện QtAutoUpdater)
  • Cross-nền tảng cho tất cả các máy tính để bàn nền tảng được hỗ trợ bởi Qt
  • Bản thân trình cài đặt là bản gốc Qt

Nhược điểm:

  • Không có trình cài đặt "gốc" nào (tức là không .msi trên cửa sổ hoặc .deb trên ubuntu)
  • Phải được sử dụng cùng - nếu bạn muốn sử dụng tính năng cập nhật, bạn phải sử dụng khung làm việc như cài đặt
Các vấn đề liên quan