BITSは依然として優れたバックグラウンド更新テクノロジですか?
-
08-07-2019 - |
質問
趣味のアプリケーションの1つは、SQLiteバックエンドを使用してアプリケーションデータを保存します。ユーザーが典型的な「更新の確認」をクリックできるように、アプリケーションがセットアップされます。更新が利用可能かどうかを確認するためにWebサービスを照会するボタン。そうである場合、ユーザーは「更新」をクリックします。ボタンをクリックして、新しいデータベースを(HTTP経由で)ダウンロードし、アプリケーションにインストールします。このプロセスは現在「モーダル」です。ダウンロードとインストールが完了するまで、ユーザーはアプリケーションで他に何もできません。
アプリケーションの更新に取り組んでいますが、実現したいことの1つは、この更新プロセスをWindows Updateの背後で行うことです。アプリケーションが起動すると、サービスが照会され、更新が利用可能な場合は自動的にダウンロードされますが、バックグラウンドでユーザーが作業を続行できます。ダウンロードが完了すると、ユーザーは更新プログラムをインストールするよう求められます。
BITS そして、このテクノロジーを活用するためにこれまで見たAPIはありませんでしたが、サンプルコードを見て、それを機能させることができると信じています。
しかし、これは「バックグラウンド更新」に近づくのに最適です。データライブラリの場合、または他のソリューション/アプローチがありますか?
解決
MS Windowsでのみ実行しており、クライアントがBITSをサポートするのに十分な新しいバージョンのオペレーティングシステムを使用している場合、他の全員が行うことではなく、プラットフォームに既に組み込まれている機能を活用する必要があると思いますタスクバーの通知領域に配置され、システムリソースを不必要に使用する独自のバックグラウンド更新チェッカーを作成します。
BITSに関する情報:
他のヒント
私はWindowsのBITSチームのPMです。はい、BITSテクノロジーは、ユーザーにとって使いやすい方法でデータをダウンロード(またはアップロード)する必要がある多くの場合に適しています。 BITSは、ネットワーク帯域幅の占有、現在の電力状態、およびネットワークコストに注意を払おうとし、障害が発生するとダウンロードを自動的に再試行します。また、C#でプログラムを作成するすべての人のために、GitHubに新しいサンプル BITS Manager プログラムを作成しました。および.NET!