本文原内置于RSS Reader Prime软件中
RSS
是英文Really Simple Syndication的缩写,中文翻译叫简易信息聚合。
准确的说,RSS
仅仅是一种协议,或者说一种规范,规定了一套信息组合的规则,同样作用的协议还有Atom
,关于两种协议的细节可以查阅以下文档:
二者都是以XML格式作为信息聚合的组织标准,RSS2.0协议目前已经冻结,今后不会再做修改。Atom协议是改进版的RSS,今后仍有可能进行调整。
RSS和Atom协议提供的是数据组织的规范和标准,订阅源则是众多网站和博客将内容按照RSS或Atom等协议为用户提供的标准化内容输出接口,这些接口以URL(统一资源定位符)的形式公布在互联网上,使用HTTP协议访问,和普通的网址没有什么区别。当你使用一般的浏览器访问的时候,只能看到接口提供的XML原始数据,只有使用RSS阅读器订阅这些源,才能将其中的内容转换为多媒体网页进行浏览。
例如下面是优质的订阅源知乎每日精选的URL
1 | https://www.zhihu.com/rss |
和一般的网站一样,订阅源的URL会失效的,当一个订阅源突然断更,没有更新的文章提供的时候,请不要给Reader差评,因为我仅仅是一个订阅工具,我的作者并不是千千万万个订阅源维护者,他仅仅拥有Reader官方源这一个RSS订阅源的管理权限。
另外订阅源并不提供旧文章的回查功能。例如上面提到的知乎每日精选,这个源会给订阅者返回最近的60篇文章,你无法查看更早的文章。
再一次提到上面说的优秀源知乎每日精选,她是一个全文输出源,当你订阅她的时候,每一篇文章的全部内容她都会包装在订阅包中,这样你在Reader中可以直接全文浏览内容。
但优秀的全文订阅源并不多,更多的订阅源采取的策略是摘要输出,而将全文留在了改源网站上,所以当你订阅了一些没办法看到全文,甚至一点正文都没有的源时,请不要给Reader差评,这个和我这个订阅工具是没有关系的,我能做的仅仅是帮你直接通过内置浏览器打开原文进行阅读。
规矩是RSS和Atom协议定的,但也会有许多不合规矩的订阅源,这些源让我在做解析的时候会非常头疼。虽然我已经适应了很多特别订阅源的“不合规矩”,但仍不能保证能兼容全部的订阅源。
最显而易见的是时间戳格式问题,有些订阅源的时间格式不规范,会导致我无法正确解析文章发布的时间,从而无法按照时间对文章进行归类。例如有个源的时间格式中仅包含月日,没有年份信息,我都无法知道这是否是几年前的旧文章;有些源就更过分了,干脆不带时间信息,这样的源订阅到的文章,是不会出现在按照时间分类的阅读列表里,只能通过源分类查看。
最近,《连线》杂志网站上刊出了一篇题为《是时候让 RSS 复兴了》(It’s Time for an RSS Revival)的文章。文章开篇便动员道,「Twitter 让你心累了吗?Facebook 让你厌倦了吗?是时候回归 RSS 了。」之后,作者介绍了几个主流 RSS 服务的功能,采访了它们的负责人。文章认为,RSS 最吸引人之处,就在于它能让你看到开放互联网未经过滤的样子,给你一个自己决定看什么的机会。
上面这段话摘自Platycodon的文章。论 RSS 的「复兴」
RSS是否复兴了,我并不清楚,但有趣的是一个有趣的项目诞生了——RSSHub
RSSHub是一个轻量、易于扩展的 RSS 生成器, 可以给任何奇奇怪怪的内容生成 RSS 订阅源。作者是就职于B站的大佬DIYgod,他们的口号是万物皆可 RSS
用这个nodejs写的工具,都不需要买服务器,理论上你可以将你想要订阅的所有公网上的资源转化为RSS订阅源,并且他们已经转化好了许多许多,详情见上面的官网。
]]>目前TF版本1.1.7仍然主要在修复已知的问题,TTS+Fever的支持开发进度在10%左右,近两个版本不会上线。
今天主要向大家介绍一下1.1.6的新功能
这个功能是用户反馈的实用功能,在正文导出的时候,可以选择是否携带Prime内置的样式。
这个功能原本是给「分类」功能开发的,顺带就下放给订阅源使用了,目前内置一些图标,感谢Q群的Y提供的资源。
这个分类功能是在Prime上架以后,收到用户反馈最多的功能,也是我设计了许久的功能,与传统RSS软件的分类有一些区别,传统软件的分类更像是子文件夹,Prime的分类则是多个订阅源合并成一个源的理念。
具体的操作方法是,点击「编辑」,选择要分类的源,可多选,点击右下角「加入分类」。
这部分功能还会继续完善,期待大家的第一手反馈。
这个就不多说了,纯试验性的功能,在软件内搜索一个关键词,即可生成反复搜索用的URLScheme,或者3D Touch快捷途径,这个功能如果不提,可能大部分用户不会发现它。
也非常感谢提这个建议的朋友,增加的快捷键使用长按Commannd的方式可以在对应视图中查看到快捷键。文章正文页用上下方向键可以滚动没有在快捷键列表中标明。
Reader 2的开发将在iOS 13正式版发布后开始规划,有可能从iOS 13开始支持,有可能会用到新系统的黑暗模式等新特性。
Prime在新系统环境下可能会有一些问题,这些问题我将在iOS13正式版发布以后第一时间修复,跟尝鲜新系统的朋友说声抱歉,我的主力电脑不敢轻易升级Beta和公测版系统。
新系统上线后,我会及时将Prime适配成Mac软件发布。
最后再次感谢大家的使用。
]]>上一篇博客提到的征稿活动持续进行中,感谢已经投稿的五位朋友,欢迎大家继续投稿。
Reader Prime依旧贯彻「RSS阅读器」围绕「未读订阅」设计的理念,保留了「全部标记已读」和单篇文章标记已读的功能。标记已读和进文章加载完毕的已读,虽然都在已读列表,但标题颜色
略有差异,用于区分的确没有打开过的未读订阅
Prime这次增加的「稍后订阅」功能,用于归纳哪些暂时没时间看,但稍后想看,有有别于收藏的文章,在列表页通过右滑文章可以快速标记。
这个功能是针对提供ttl参数的订阅源使用的,例如「知乎每日精选」的ttl为300分钟,意味着订阅源希望订阅软件每5个小时更新一次文章。打开此功能,Reader Prime就会根据订阅源的建议更新时长,选择是否更新订阅。订阅源加载时,如果支持ttl建议打开此功能,这样能减少订阅源服务器的压力。
这里的自动更新仅对系统后台更新时是否更新源有效,开启软件手动刷新不受这个设置限制。一般像Reader的官方RSS,就不需要打开自动更新,因为更新频率很低,没必要次次更新新数据。这个开关在订阅源三日内没有新文章的情况下会在订阅时自动打开。
Reader Prime这次没有内置浏览器,直接选用了官方SDK的内置Safari,是因为内置Safari速度快,支持阅读模式。在订阅源不提供全文阅读的情况下,打开这个设置,订阅源会从列表页直接打开网页原文,并在原文支持阅读模式的情况下自动开启阅读模式。
这里多说两句,很多RSS工具都提供了抓原文的功能,Reader Prime暂时不提供,有两点原因。一是开发成本有限(其实是懒,或者说是菜),我尚未深入研究Reeder4使用的原文分析引擎;另一个原因是对于需要流量的订阅站点,RSS某种程度上会分流主站流量,减少广告曝光率,他们会选择提供非全文的源引流大家到主站,也是RSS技术的初衷之一(全文党不要打我),这一点上同为IT领域从业者,我表示选择理解。
就没有特别需要介绍的了,再次感谢大家支持;接下来的1-2周,Reader Prime会持续更新修复大家提出的各种问题;再下一步Reader 2将会提上立项日程,敬请期待。
]]>怕大家看不到,写到正文前面了。SP版本不打算内置订阅源数据库,所以考虑内置一些已知的优秀源。励志作为新用户入门RSS的最佳引导APP的SP版Reader,在此向大家征稿:
留下您最喜欢的订阅源,和您的评价,外加一个昵称和一个头像。
例:
标题: 青年图摘
订阅URL: https://qingniantuzhai.com/feed
评价: 这个沙雕图订阅源,承包了我每日一半的快乐。
昵称: 秋刀鱼片
头像: 邮件附件
留下您最常用的订阅源组合,和您的评价,最好附加个人的使用场景说明,外加一个昵称和一个头像。
例:
标题:程序员的日常
正文:作为一个普通程序员,我们用RSS订阅什么呢?
全部征稿我整理后会内置到SP版本的推荐订阅源中,并附带投稿用户的头像、昵称和评论。
所有稿件一经录用,没有任何稿费(:仅将投稿人列于SP版本特别感谢名单之中,所有投稿邮箱将第一批优先获得Reader 2礼品码一枚(我准备至少卖12的,不降价)。
征稿邮箱 : nsstring@qq.com
截止日期 : 不存在
上一篇公告被火速打脸,Reader阅读器
在经过长达两个月的审核状态后,奇迹般地恢复上架了(可能跟我每周一封投诉有一丢丢关系),感谢朋友们和PriceTag的推荐,Reader在恢复上架后迎来了一大波新用户。
原本我是不指望Reader重新上架的,包括换皮重发版本的想法也没有,所以一直在着手开发目前进行到第三轮内测的SP版本;很多新朋友向我反馈关于Reader当前上线版本的改进意见,十分感谢,不过可能目前并不会对Reader阅读器
进行大规模的修改,原因有三点
Reader阅读器
是2016开始开发的,全凭一时性起,边开发边构思,项目整体耦合高,可维护性很差,也基本很难扩展。很多朋友提出很不错的改进意见,在这个项目上修改的工作量,往往比重新开发的工作量还要大,这个事情可能非IT行业的朋友不是太能理解,尽量理解一下。
Reader阅读器
的开发,借鉴过两款软件,一款是Mac版本的Reeder 2
,一款是iOS的Unread
,这两款软件都很优秀,唯一的缺陷可能就是没有中文支持,另外两个软件的对Voiceover的支持不够好。直到近期Reeder 3免费以后,我才尝试了一下,发现其功能完善,让我有一种井底蛙的即视感。可以说,Reader阅读器
从早期设计上就落后于同期的国外竟品,这是个不争的事实。
Reader阅读器
唯二的两个长处,也是下一代要继承的部分分别是“用户数据维护的订阅源库”和“标准UI控件对Voiceover的良好支持”。前者其实并非完美的解决方案,目前来看在其中筛选出高质量源仍是个费劲的事,这部分功能只有进行重构才能迭代出更优秀的交互形态。
所以目前我的计划是,重点开发SP版本,Reader阅读器
不会进行大的调整;SP版本是一个货真价实的重构版本,代码已经开源,这个在之前的通告中已经说明了。我全部重构的目的是为了降低软件的测试、修改、扩展的额外开销,能把更多精力集中在功能研发上。
重构后的SP版本,在多源订阅的时候,采用了多线程同步并发的方式,相对于Reader阅读器
的单线程方式,订阅速度有绝对的提升。
SP版本的UI采用了类似网页前端CSS的技术——Classy,这个优秀的框架虽然不维护了,但仍然很强大,给SP版本提供了简洁、高效的全局适配方案。我在此基础上,设计了相对旧版更简单高效的换皮方案(包括夜间模式)。
SP版本内置了全文缓存功能,当前内测版本仅缓存前后两篇文章。原本是为了提高加载速度,研发的功能,后来发现是Reeder 3的标配功能,才明白为什么Reeder 3加载速度巨快,所以弄的就像抄袭一样,其实是个自己构思的功能。
再过一个内测版本,SP版可能就可以跟大家见面了,再次感谢所有参与内测的朋友,最终版本仍可能在UI上与当前内测版本有较大出入,望理解。有很多功能的取舍、交互设计、样式颜色字体等都是很主观的部分,不可能满足所有人的审美标准,大家也不可能有相通的标准,望理解。
]]>Reader SP是一个连接旧版本Reader和RSS Reader 2的中间版本,是一个重新设计UI、交互逻辑的重构版本。相比于旧版本的Reader,虽然目前功能还不完善,但却是一个更容易维护、更易扩展的项目。
之前承诺给大家提供这个免费版本,虽然比承诺的两个月时间略长了一些,希望没有让大家失望。另外SP版本的源代码我已经在Github上全部公开,有兴趣的朋友可以自行编译、修改,也欢迎大家参与Reader的开发。
我将会针对Test Flight版本大家提供的反馈,优先修复功能上的问题,其次完善UI和交互上的缺陷,预计在内测3-4轮以后提交App Store发布正式版本。
目前Reeder 3已经完全免费,据消息称作者已经在制作Reeder 4。同样我也在筹划制作RSS Reader 2,这将是一个基于SP版本,拥有更多实用功能,单独适配iPad的版本,有兴趣的朋友可以加入我们的QQ群819888483,将在第一时间为大家提供礼品码,再次感谢大家的支持。
]]>由于沟通未果,为了防止苹果将我的账号永久禁封,我只能选择将Reader下架,再次感谢各位多年来的支持。
后续我将抽时间重构Reader,重新设计UI,初步计划在两个月内上线一款新的轻量级的RSS阅读器,免费提供。然后再新应用的基础上,扩展一个完整功能版Reader,届时我准备为各位老朋友们生成礼品码,为此我创建了一个方便大家联系的QQ群819888483,再次感谢大家支持。
]]>但不能否认的是,仍有许多人在使用RSS以及相似的技术提供的服务,我就是其中之一。我使用的第一个RSS订阅工具是Reeder 2的Mac版本,这个跨平台的RSS订阅工具至今仍非常受欢迎,但Reeder对于我来说,一方面太贵了,另一方面满足不了我的一个核心需求—,就是寻找优质的RSS订阅源。
这门技术小众决定了用户群体的小众,最终影响的是订阅源的繁荣,很多曾经提供优质内容的订阅源相继关闭服务。
这就是我最初构思Reader的灵感,我想通过每一位用户的分享,去充实完善和维护一个订阅源数据库,帮助更多用户更轻松的寻找到自己喜欢的内容。这个看似简单的计划,实际上在实施过程中并不完善,例如Reader发布的第一年,用户量极小,订阅源数据库也非常有限;后来积累了一些订阅源后,部分订阅源又中止了服务;最近几次更新中,有用户提醒我是否将“采集订阅源”的行为告知用户,我才意识到这个行为是要通过“隐私协议”告知用户的。
至今的版本,我仍没有想到比较好的办法,来优化当初设计的订阅源分享系统,包括欠缺的订阅源反馈,分类,审核等功能。比如我在国内面临的一个问题是,很多国外的订阅源被墙,即使科学上网我也不能保证这些源无效,并且对于我个人来说一一审核订阅源本身就是不太可能完成的任务。
通过技术手段进行筛选和验证,是我目前思考的最可行的手段,可能还需要一段时间尝试。
写这篇文章的主要原因,是想统一感谢一直使用Reader的各位朋友,感谢你们积极地跟我反馈使用中遇到的问题。尤其感谢乐魂
(微博),让我知道原来iOS给视障用户提供了优秀的交互支持,帮助我完善了Reader的Voiceover功能。
昨日(2018年4月12日)晚上九时,Reader的服务器由于访问次数过多被封,跟大家说声抱歉。
事情源自于当日的限免活动,这个平时日活只有20多的小成本应用,在短时间内来了很多新朋友,将近三千人访问。Reader使用的LeanCloud云服务,对免费应用每日的API请求次数有3万次的限制,而截至发文时间,今日的请求数已经消耗过半,所以今天仍有可能会在晚些时候出现连不上服务器的情况,请各位见谅,这个情况只影响大家搜索查找订阅源,不影响大家通过URL订阅和阅读已有的订阅。
由于LeanCloud在Reader发布一年后修改了收费策略,要求商业应用每日低销不得少于30元人民币,而Reader的实际收入为日均8-12块人民币,并且极不稳定,导致我无法将其转成商业版运作,小本买卖赔不起请各位用户见谅。
我将在下一个版本中,考虑迁移订阅源服务器,以便给大家提供更好的服务,感谢大家的支持。
]]>Reader
是一个简洁的RSS/Atom订阅阅读器,你值得拥有。
iNote
是我们团队开发的一款简易的,支持Markdown
标记语言的记事本App。