【问题标题】:win8 store app access local storagewin8商店应用访问本地存储
【发布时间】:2013-07-19 13:40:04
【问题描述】:

我正在开发一个 Win8 Store 应用程序,它允许用户从在线学习平台下载不同类型的文件并将它们存储在本地。我也在考虑通过将这些下载的文件放在不同的文件夹中(基于课程名称等)来帮助用户组织这些下载文件的功能。

我之前使用的是文档库。但是对于用户可以下载的每种类型的文件,我都需要添加一个文件类型关联,这没有多大意义,因为我的应用程序能够打开这些文件。那么我的应用应该使用哪个本地存储呢?

非常感谢。

开智

【问题讨论】:

  • 用户是否总是通过您的应用访问文件,还是需要/想要在文件浏览器中与文件交互或与其他应用共享?
  • 用户也希望通过文件资源管理器访问文件。这就是为什么我想将文件存储在“易于查找”的位置,例如文档库

标签: windows-8


【解决方案1】:

Windows 应用商店应用对存储的访问非常有限,尤其是 DocumentsLibrary。

正如您所注意到的,您需要为要从 DocumentsLibrary 读取或写入的每种文件类型声明一个文件类型关联。这意味着您的应用需要以有意义的方式处理这些类型的文件激活,而您的应用可能不应该这样做。

但是即使你跳过了这个圈子,还有一个没有记录在MSDN page of the DocumentsLibrary中,而是“隐藏”在lengthy page about app capability declarations中的一个:根据当前的规则,你是不允许将 DocumentsLibrary 用于除离线访问 SkyDrive 之外的任何内容! 太糟糕了...

那么还剩下什么?

您可以使用 SkyDrive 或其他云存储将文件放在众所周知的位置(可能在硬盘上的某个位置,也可能不在)。在您的情况下,这可能既过大又不可取。

或者您将文件保存在local app storage,提供您自己的应用内文件浏览器和open the files with their default app。对我来说似乎可行。

或者,也许,你可以用share contracts or other contracts 做点什么。我对这些了解不多,但我怀疑它们对您的情况有帮助。

就是这样……

(根据我目前的经验。不保证正确性或完整性)

【讨论】:

  • 感谢您提供的信息。它有很大帮助。下载库呢?我可以在里面创建组织良好的文件夹吗?
  • @user1437038:我不知道应用程序是否/如何访问它。它不是 KnownFolders msdn.microsoft.com/en-us/library/windows/apps/… 的一部分。如果有帮助,别忘了点赞/接受我的回答。
  • 我想我已经想出了如何实现这一点。我应该在 Downloads 文件夹中创建文件夹并使用 FutureAccessList 来存储这些文件夹(这样下次我仍然应该有权访问这些文件夹)。无论如何,我会接受你的回答。感谢您的努力!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-24
  • 1970-01-01
  • 2013-02-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多