當安裝Silverlight 4應用程序並運行瀏覽器外(OOB)時,是否可以讓應用程序自動識別對.xap文件的更新(以及自動安裝或提示用戶更新)?XAP緩存在瀏覽器外(OOB)Silverlight應用程序
如果您從其原始網址訪問應用程序,則會自動給出最新的&最大(根據您的設置)。
但是,一旦我安裝應用程序以運行OOB,它似乎不會識別原始.xap文件的更新,也似乎沒有任何方式觸發更新(除了右鍵單擊,卸載和然後去網站獲取最新版本)。
在此先感謝
當安裝Silverlight 4應用程序並運行瀏覽器外(OOB)時,是否可以讓應用程序自動識別對.xap文件的更新(以及自動安裝或提示用戶更新)?XAP緩存在瀏覽器外(OOB)Silverlight應用程序
如果您從其原始網址訪問應用程序,則會自動給出最新的&最大(根據您的設置)。
但是,一旦我安裝應用程序以運行OOB,它似乎不會識別原始.xap文件的更新,也似乎沒有任何方式觸發更新(除了右鍵單擊,卸載和然後去網站獲取最新版本)。
在此先感謝
這事您的應用程序需要實現。但Application
對象提供了一種簡單的方法,通過CheckAndDownloadUpdateAsync方法實現此目的。
查看CheckAndDownloadUpdateAsync方法未找到更新的其他信息。確保你已經簽署了你的xap文件。
「SL工程」 - >屬性 - > Signing->檢查 「簽署XAP文件」
而且CheckAndDownloadUpdateAsync似乎放在Application_Startup()儘量多的樣品建議時阻塞UI線程。將其放置在後臺工作人員中的干擾較小,並允許我們自定義支票的頻率。
更新:我不確定CheckAndDownladUpdateAsync是否仍然與SL5行爲相同。這就是我如何與SL4做到了:
我包需要的UI線程與Dispatcher.BeginInvoke(包括任何代碼):
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
App.Current.CheckAndDownloadUpdateCompleted += new CheckAndDownloadUpdateCompletedEventHandler(App_CheckAndDownloadUpdateCompleted);
App.Current.CheckAndDownloadUpdateAsync();
}
+1表示需要簽署XAP。 – jv42 2012-01-23 16:20:37
你能提供一個你如何集成backgroundworker和CheckAndDownloadUpdateAsync()的例子嗎?當我嘗試按照自己的方式嘗試執行操作時,我收到了無效的跨線程異常... – rumblefx0 2012-11-23 08:50:39
這與SL4一起使用,我不確定它是否仍適用於SL5。我用Dispatcher.BeginInvoke()包裝了需要UI線程的任何代碼。包括: App.Current.CheckAndDownloadUpdateCompleted + = new CheckAndDownloadUpdateCompletedEventHandler(App_CheckAndDownloadUpdateCompleted); App.Current.CheckAndDownloadUpdateAsync(); – Fares 2012-12-19 17:05:18
好極了,謝謝你。 – enforge 2010-10-01 19:46:34