0

我正在创建一个通用应用程序来捕获照片或视频并通过其 REST API 将其上传到 SharePoint。当前原型的流程很简单:

  1. 在主页上,用户单击按钮以捕获照片或视频
  2. 可以使用 CameraCaptureUI API 捕获照片或视频
  3. 用户被重定向到他/她可以输入一些元数据的页面
  4. 如果用户单击上传按钮,文件将被发送到 SharePoint 并且用户被发送回主页
  5. 如果用户点击取消按钮,他/她将被送回主页

所有这些都有效,但我不确定在不再需要 StorageFile 后如何处理它。在手机上,文件被保存到某个默认位置。我没有将它复制到图片库或其他任何东西,在文件上传(或用户取消)后,我不再需要它在设备上。

我应该自己删除这个 StorageFile 还是在应用程序暂停或关闭时操作系统会处理这个问题?我想避免应用程序随着时间的推移慢慢消耗越来越多的存储空间,例如因为用户在文件上传之前关闭它。

附带说明:我没有使用后台任务来上传文件。用户需要监控上传(进度条),如果失败则重试。如果由于没有 Internet 连接或 SharePoint 关闭而无法上传文件,我不再关心它。

4

1 回答 1

0

一切都取决于您存储文件的位置。如果您为此使用了本地文件夹,那么删除文件可能是一个不错的选择,因为它不再占用内存。

尽管如此,从我读到的内容来看,您的场景只适合临时位置。如果您使用ApplicationData.TemporaryFolder那么您不需要处理该文件,因为操作系统会在需要时处理它

临时应用程序数据存储就像缓存一样工作。它的文件不会漫游,并且可以随时删除。系统维护任务可以随时自动删除存储在此位置的数据。用户还可以使用磁盘清理从临时数据存储中清除文件。临时应用数据可用于在应用会话期间存储临时信息。无法保证此数据会在应用会话结束后持续存在,因为系统可能会在需要时回收已用空间。

于 2016-05-05T05:09:09.387 回答