我们已开发出一款可在离线和在线模式下工作的iPhone应用程序(也就是说我们也可以离线存储数据和照片),我们只会显示来自iphone的数据,而不是来自网络服务。
因此,启动应用程序时,我们将一个Web服务用于下载sql查询的数据和一个用于照片的Web服务,该服务在服务器上生成超过1000张照片的zip文件。
但是如果当时照片数量大于2000,我们会因创建zip文件而遇到服务器端错误。错误描述如下所列。
Fatal error: Allowed memory size of 52428800 bytes exhausted (tried to allocate 4186492 bytes)
这是与内存相关的问题,我们已经增加了内存,因此现在这个问题已经解决了,但是将来如果当时照片的数量大于3000,也会出现同样的错误。
所以现在我们认为我们应该从服务器下载一张照片。请向我们提供宝贵的反馈和其他下载照片的最佳选择。
答案 0 :(得分:0)
只需检查图像是否在设备上..
if([[NSFileManager defaultManager] fileExistsAtPath:path]){
// load image
}
else{
// download image
}
答案 1 :(得分:0)
我们已经做了一些R& D并且发现解决方案是将下载分为多个zip代替一个zip。
恢复下载也很可靠。