我正在开发一个应用程序,我需要在本地下载大量图像(以便它们可以离线使用)。图像的数量可以是 100 - 10,000。每个图像可能从 100K 到 250K 不等
我可以通过 NSOperationQueue 做到这一点,并且我已经有代码可以完成这项工作,但这个问题更多的是概念性的。我不确定在这里采取的最佳方法是什么。
1) 用户第一次登录后,我是否会立即下载所有图像?根据图像的数量,这可能需要很长时间,如果用户同时关闭应用程序会怎样。我知道在这种情况下后台进程可以花费的时间有限制吗?老实说,我不想在后台做任何事情(即当应用程序关闭时)
2)当用户选择特定类别时,我是否下载图像?如果一个类别有 800 张图片,那么如果用户在所有这 800 张图片下载完成之前选择了另一个类别会发生什么?我总是可以开始下载线程,但是如果用户选择另一个类别,线程会继续运行吗?
3)在“设置”中放一些东西,让用户自己决定。像“总图像:8000”图像可用:2000 和一个按钮说“全部下载”将显示正在发生的事情的 UIProgressView....所以用户可能会等到它全部完成。
还是其他方法?
想法?