浏览器外的XAP缓存(OOB)Silverlight应用程序

时间:2010-10-01 19:19:34

标签: silverlight silverlight-4.0 out-of-browser silverlight-oob

当安装Silverlight 4应用程序并运行浏览器外(OOB)时,是否可以让应用程序自动识别.xap文件的更新(并自动安装或提示用户更新)? / p>

如果您从原始网址访问该应用程序,您将自动获得最新的&最大的(根据您的设置)。

但是一旦我安装了运行OOB的应用程序,它似乎无法识别原始.xap文件的更新,也似乎没有任何方法可以触发更新(在右键单击,卸载之外,然后去网站获取最新版本。)

提前致谢

2 个答案:

答案 0 :(得分:3)

这是您的应用程序需要实现的东西。但是Application对象提供了一种通过CheckAndDownloadUpdateAsync方法实现此目的的简单方法。

答案 1 :(得分:3)

查看CheckAndDownloadUpdateAsync方法未查找更新的其他人的其他信息。确保您已签署了xap文件。

“SL Project” - >属性 - >签名 - >选中“签署Xap文件”

同样,CheckAndDownloadUpdateAsync似乎在放置在Application_Startup()中时阻止了UI线程,因为许多示例建议。将它放在后台工作人员中的破坏性较小,并允许我们自定义检查的频率。

更新:我不确定CheckAndDownladUpdateAsync是否与SL5的行为相同。这就是我用SL4做的事情:

我使用Dispatcher.BeginInvoke()包装需要UI线程的所有代码,包括:

Deployment.Current.Dispatcher.BeginInvoke(() =>
{
  App.Current.CheckAndDownloadUpdateCompleted += new CheckAndDownloadUpdateCompletedEventHandler(App_CheckAndDownloadUpdateCompleted);
  App.Current.CheckAndDownloadUpdateAsync();
}