【问题标题】:Design guidance for Mobile RSS Feed Reader移动 RSS 提要阅读器的设计指南
【发布时间】:2015-02-25 22:17:56
【问题描述】:
我正在开发一个移动(Windows 手机)RSS 提要阅读器宠物项目。
我有一些需要指导的设计决策。他们在这里:
-
首先,当提要阅读器下载 RSS 提要时,我如何显示用户已阅读的项目与新的或未阅读的项目。
我是否将文件内容与已读/未读文章的信息一起存储在本地数据库中。
其次,当我们下载 RSS 提要时,我们会下载整个文件吗?我想即使使用 CONDITIONAL-GET 之类的方法仅在更新时获取提要内容,也无法下载 RSS 文件的增量。
第三,如果下载了整个文件,移动提要阅读器是从头开始显示数据还是截断它以仅显示最近 N 天的提要(其中 N 是整数天,例如 15 或 30)
提前致谢
问候
维卡斯
【问题讨论】:
标签:
windows-phone-8
mobile
rss
feed
【解决方案1】:
由于您正在构建手机应用程序,因此您可以采用两种方法:让服务器跟踪更新的内容并让设备连接到它以检索它,或者处理所有事情(获取、解析和比较来自手机的提要)。
对于您的问题:
您必须在本地(在设备上)跟踪用户已阅读或未阅读的内容。您可能会在提要的条目中使用<guid> 或<id>(Atom) 元素来识别每个元素并跟踪已读取的项目列表。
条件 GET(if-Modified-Since 和 ETag)对您没有多大帮助,因为当内容更新时,它们会为您提供整个 RSS/Atom 文档。所以,是的,你必须一遍又一遍地下载整个文件,是的,这很浪费。
这完全取决于您。将所有内容存储在设备上并让用户决定是否要删除过去的故事实际上可能相对“便宜”。
如果您不想处理获取、解析和区分 RSS 提要的麻烦,我建议您检查像 Superfeedr 这样的服务,它可以代表您在服务器或设备上执行此操作!