4

Silverlight 4 アプリケーションがインストールされ、ブラウザ外 (OOB) で実行されている場合、アプリケーションが .xap ファイルの更新を自動的に認識できるようにする (そして、自動的にインストールするか、ユーザーに更新を促すプロンプトを表示する) ことはできますか?

元の Web URL からアプリケーションにアクセスすると、(設定に基づいて) 最新かつ最高のアプリケーションが自動的に提供されます。

しかし、アプリケーションをインストールして OOB を実行すると、元の .xap ファイルの更新が認識されないようであり、更新をトリガーする方法もないようです (右クリックしてアンインストールし、次に移動する以外にはありません)。 Web サイトで最新バージョンを入手してください)。

前もって感謝します

4

2 に答える 2

3

これは、アプリケーションで実装する必要があるものです。ただし、オブジェクトは、 CheckAndDownloadUpdateAsyncメソッドApplicationを介してこれを実現する簡単な手段を提供します。

于 2010-10-01T19:39:01.670 に答える
3

更新プログラムが見つからない CheckAndDownloadUpdateAsync メソッドを参照している他のユーザー向けの追加情報。xap ファイルに署名していることを確認します。

「SL Project」→「Properties」→「Signing」→「Sign the Xap File」にチェック

また、多くのサンプルが示唆するように、Application_Startup() に置かれたときに CheckAndDownloadUpdateAsync が UI スレッドをブロックしているように見えました。バックグラウンド ワーカーに配置すると、混乱が少なくなり、チェックの頻度をカスタマイズできるようになりました。

更新: CheckAndDownladUpdateAsync が SL5 でも同じように動作するかどうかはわかりません。これは、SL4で行った方法です。

UI スレッドを必要とするすべてのコードを Dispatcher.BeginInvoke() でラップしました。

Deployment.Current.Dispatcher.BeginInvoke(() =>
{
  App.Current.CheckAndDownloadUpdateCompleted += new CheckAndDownloadUpdateCompletedEventHandler(App_CheckAndDownloadUpdateCompleted);
  App.Current.CheckAndDownloadUpdateAsync();
}
于 2011-02-09T22:42:30.240 に答える