我们如何在运行时为Windows商店应用修改应用包的资产

时间:2014-11-10 05:43:53

标签: javascript windows-phone-8 windows-runtime windows-store-apps winjs

我可以使用Windows.ApplicationModel.Package.current.installedLocation属性获取应用程序包的句柄。请问在运行时是否可以用更新的文件替换包中的文件。请尽可能提供片段。

2 个答案:

答案 0 :(得分:1)

您的包裹位置是设计为只读的。如果要在运行时替换这些内容,请采用以下策略:

  • 首次运行时,将文件从只读页面复制到本地或临时应用数据中的位置。
  • 始终从该应用数据位置引用这些内容。
  • 如果您想要替换该文件,只需在该应用数据位置覆盖该文件,其余代码也可以正常工作。

请注意,您可以使用ms-appx:///和ms-appdata:// local / URIs通过StorageFile.getFileFromApplicationUriAsync获取文件,而不是先获取StorageFolder。这可以简化代码。

答案 1 :(得分:0)

我很确定该目录是只读的:请参阅Access Denied Installed Location

为什么要首先写入该目录?为什么不通过正常的更新过程?