1

最近我接手了一个编写的 Windows Store 应用程序项目C#/XAML,它的要求之一是,

将项目迁移到Javascript/HTML5,并通过从我们的网站动态加载 javascript,我们可以根据需要随时更新代码逻辑,而无需提示用户下载我们的应用程序的新版本。部署的应用程序非常简单,不需要更新,每次应用程序启动时,它都会尝试从 Web 加载 javascript 和内容。

这个需求来自市场营销,他们认为如果可以以这种方式更新应用程序,那就太棒了。我不知道这是否是一个好主意,甚至是否可行。

我的问题

  1. 如果这不是一个好主意/不可行,请给我一些理由
  2. 如果javascript可以动态加载,那么html和css文件呢?

编辑

当我问这个问题时,我还没有听说过Cordova,当时混合应用程序的想法还很新鲜。使用 Cordova,我们可以编写以这种方式运行的应用程序。Web 内容 (HTML/JS/CSS) 在 WebView 控件中呈现,并且每次都可以从 Web 更新。

4

1 回答 1

2

总之,我不相信app可以这样写。

部署应用程序时,应用程序代码是 appx 包的一部分,如果您希望通过商店访问它,它必须通过 MS 的应用程序认证检查。

这可确保应用程序代码质量合适,并勾选相应的安全框等。

我不相信您可以从远程源动态加载应用程序代码,否则您可能正在加载任何旧的未经验证的 cack,并且不会检查此代码。

但是,据我了解,更新机制非常简单,将您的应用程序代码的新版本推送到商店将允许用户在闲暇时更新应用程序并为您处理该过程。

我认为在动态加载方面你能得到的最好的东西是在你的应用程序中远程加载一个网页(网页可以根据你的需要进行更新)。这将不允许您从网页运行应用程序代码,并且网页是远程的,从安全角度来看,它将在“Web 上下文”下运行,因此您将无法使用很多本机功能可以在本地运行。如果在 JS/HTML 中重新开发应用程序的原因是动态加载代码,我建议不要这样做。C# 实现和 JS 实现之间没有很大的差异,因此用不同的语言重做所有现有工作似乎效率低下。

于 2013-02-25T09:38:55.327 回答