我应该从CameraCaptureUI

时间:2016-05-05 00:18:17

标签: mobile win-universal-app storagefile

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

  1. 在主页面上,用户点击按钮捕捉照片或视频
  2. 可以使用CameraCaptureUI API
  3. 捕获照片或视频
  4. 用户被重定向到他/她可以输入一些元数据的页面
  5. 如果用户点击上传按钮,则会将文件发送到SharePoint并将用户发送回主页
  6. 如果用户点击取消按钮,他/她将被发送回主页
  7. 所有这些都有效,但我不确定在不再需要StorageFile之后该如何处理它。在手机上,文件将保存到某个默认位置。我没有将它复制到图片库或其他什么,在文件上传后(或用户取消)我不再需要它在设备上。

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

    旁注:我没有使用后台任务上传文件。用户需要监视上载(进度条)并在失败时重试。如果由于没有互联网连接或因为SharePoint关闭而无法上传文件,我不再关心它。

1 个答案:

答案 0 :(得分:0)

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

然而,根据我的阅读,您的方案恰好适合临时位置。如果您使用ApplicationData.TemporaryFolder,那么您不需要处理文件as the OS will handle it when needed

  

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