我正在创建一个通用应用来捕获照片或视频,并通过其REST API将其上传到SharePoint。当前原型的流程很简单:
所有这些都有效,但我不确定在不再需要StorageFile之后该如何处理它。在手机上,文件将保存到某个默认位置。我没有将它复制到图片库或其他什么,在文件上传后(或用户取消)我不再需要它在设备上。
我是否应该自行删除此StorageFile,或者当应用程序暂停或关闭时操作系统是否处理此问题?我想避免应用程序随着时间的推移慢慢占用越来越多的存储空间,例如因为用户在文件上传之前关闭它。
旁注:我没有使用后台任务上传文件。用户需要监视上载(进度条)并在失败时重试。如果由于没有互联网连接或因为SharePoint关闭而无法上传文件,我不再关心它。
答案 0 :(得分:0)
一切都取决于您存储文件的位置。如果您已经使用了本地文件夹,那么删除该文件可能是一个不错的选择,因为它不会再占用内存。
然而,根据我的阅读,您的方案恰好适合临时位置。如果您使用ApplicationData.TemporaryFolder,那么您不需要处理文件as the OS will handle it when needed:
临时应用数据存储的工作方式类似于缓存。它的文件不会漫游,可以随时删除。系统维护任务可以随时自动删除存储在此位置的数据。用户还可以使用“磁盘清理”清除临时数据存储中的文件。临时应用程序数据可用于在应用程序会话期间存储临时信息。无法保证此数据将在应用会话结束后持续存在,因为系统可能会在需要时回收已用空间。