我想访问网络服务以获取大量数据(例如产品列表/详细信息/搜索结果)并显示此内容。
此类操作是否有最佳实践? 在性能方面,有没有比在每个请求上检索,解析和显示文本数据更好的方法,并且可能在后台加载图像?有没有明智的缓存策略可以应用?
答案 0 :(得分:1)
如果我从头开始做这样的事情,这就是我要做的事情:
让网站以XML格式发布所有数据。除了图片之外 - 只需要一个XML字段指定每张图片的URL。因此,举例来说,我说我正在做产品清单。
使用NSXMLParser来获取和解析XML数据。
使用单独的NSData dataWithContentsOfURL:调用以获取每个图像的内容,使用XML数据中的URL
使用CoreData将XML数据(和NSData图像)写入数据库表。向表中添加索引时间戳字段。
您现在可以使用timestamp字段在数据库中保留最新的“x”记录 - 如果需要,可以清除旧的记录。
使用数据库表的内容填充UITableView - 或者您要呈现的其他内容。
在UITableView中创建某种“next”,“prev”或“update”字段,以便从Web获取更多数据,如果您需要显示的数据多于缓存的数据 - 或者您希望更新缓存中的数据。