MS Windows 用の wxPython でアプリケーションを作成します。以前作ったネイティブOS Xアプリの移植です。OS X アプリケーションでは、アプリケーションの自動更新はSparkle Frameworkで適切に機能します。(サーバーに保存されている appcast.xml を読み取ってアプリケーションの更新を検出し、特定のマジックをすべて更新し、署名をチェックします。) wxPython/Windows 開発用の同様のソリューションはありますか? wxPython に統合するためにそのようなポートが必要ですか?
2 に答える
wx.lib.softwareupdate
ソフトウェアの新しいバージョンが利用可能になったときに、凍結されたアプリケーションが自分自身を更新できるようにする、Esky を使用する mixin クラス。
このモジュールは、新しいバージョンがリリースされたときにアプリケーションを自動更新できる派生クラスを形成するために wx.App と混合するように設計されたクラスを提供します。これは、 http: //pypi.python.org/pypi/esky の PyPi で利用可能な Esky パッケージに基づいて構築されています 。
ソフトウェアの更新を機能させるには、bdist_esky distutils コマンドを使用してアプリケーションを esky バンドルに入れる必要があります。これにより、py2app、py2exe などを使用して実際のアプリケーションがフリーズします。詳細については、Esky のドキュメントを参照してください。このモジュールのコードは、アプリケーションが凍結されている場合にのみ効果があり、それ以外の場合は黙って無視されます。
WinSparkleを見たことがあるかもしれません。これは、wxWindows の上にある Windows 用の Sparkle アイデアの「ポート」です。これを wxPython アプリにバインドするのは簡単です (swig / ctypes)。
しばらく WinSparkle をチェックしていませんでしたが、アクティブなようで、IIRC には、拡張されたダウンロード サポート/機能を備えた多くのフォークがあります。