我正在开发一个使用后台提取来访问大量RSS提要并检查新结果的应用程序。我已尽最大努力优化解析时间,以便在iOS为您提供背景提取的〜30s窗口中管理尽可能多的Feed。
在用户可能有200多个RSS源的情况下,此操作将花费超过30秒 - >什么是达到30s限制的最佳方式?
是否有办法创建顺序请求方法,例如存储a"请求编号"在NSUserDefaults中并确定当时要获取的内容。
前:
Fetch 0 = first 50 feeds, set the Fetch# to 1 on completion.
Fetch 1 = second 50 feeds, set Fetch# to 2 on completion.
etc,
这是唯一的方法吗?还有更好的方法吗?
由于
答案 0 :(得分:1)
该解决方案非常智能且可能有效。
如果我在你的位置,我会将提取和解析提要的任务委托给某种类型的cronjob中的服务器,该服务器以设定的间隔刷新系统中的所有提要,让客户只检查是否存在是已解析的Feed中的更新。您可以使用源和最后更新的日期保留一个简单的数据库,可以根据iphone客户端上的信息进行检查。
唯一适用于iOS超过30秒的其他背景模式是后台传输服务,我不知道如果有办法让它有创意,但你可以试试。