百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

Mac / iOS 最接近原生的 RSS 阅读器体验:NetNewsWire

csdh11 2025-01-20 12:02 27 浏览

RSS 并没有随着 2013 年关闭的 Google Reader 逐渐消失,事实上,至今还有很多人在继续使用,也有很多产品在持续迭代。例如,较为熟知的 Feedly、Inoreader 等 RSS 抓取服务,以及 Reeder、Unread 等 RSS 客户端。

今天介绍的 NetNewsWire 是一款支持 Mac 和 iOS 双平台的 RSS 客户端,其首发于 2002 年。去年 8 月,NetNewsWire 5 正式发布,而今年 3 月首次支持 iOS 和 iPadOS。

设计

NetNewsWire 的 Mac 和 iOS 应用均使用 Swift 开发,是一款彻底的原生应用。开发者毫不谦虚地说,NetNewsWire 应该是用 Swift 编写的最大的开源项目之一,几乎是第一。同时,NetNewsWire 使用 MIT License 开源了 整个项目,供所有 Swift 开发者学习使用。

NetNewsWire 整体使用了简洁明晰 Apple UI 设计语言,同时应用支持 Dark Mode 暗黑模式。

同时,其 iOS 应用和 Mac 应用具有高度的一致性,iPad 版本采用了与 Mac 相似的三栏样式。而在 iPad 多任务处理中,悬浮窗口呈现的 NetNewsWire 几乎和 iPhone 应用一模一样。

与 iOS 平台上另外两个旗舰 RSS 应用 Reeder 和 Unread 相比,NetNewsWire 的设计感稍显不足。但是,其接近系统应用的设计风格,虽算不上惊艳,但十分耐看。我个人甚至很喜欢这种接近于系统应用的设计风格。

功能

NetNewsWire 支持一个默认的本地 RSS 账户,以及绑定 Feedly 和 Feedbin 服务。 目前,其并不支持 Inoreader 和 NewsBlur 等更多的 RSS 服务账户,我认为这一点亟待改进。

此外,作为一款只支持 Mac 和 iOS 的应用,NetNewsWire 完全可以使用 iCloud 同步本地账户,而不需要用户在各个设备上都单独添加一遍自己订阅的站点。对于上述 2 个问题,开发者也承诺会在后续版本中改进。

NetNewsWire 提供了智能视图,你可以快速筛选出今天、未读和收藏的内容。其中,今天包含了过去 24 小时的文章。这个细节我很喜欢,如果只包含真正意义上「今天」的文章,那些午夜发表的内容就很可能会被忽略。

此外,NetNewsWire 提供了获取全文的功能,该功能适用于一些仅在 RSS 中包含摘要信息的订阅源。目前,NetNewsWire 并不支持调整文章的字体样式和大小,只能使用官方默认的渲染样式,这一点对自定义要求高的用户可能稍显遗憾。

NetNewsWire 快捷键支持值得一提,iPad 版本上的所有操作基本都有快捷键,快速浏览标记文章的体验非常好。

同样,Mac 版本也支持大量的快捷键操作,你甚至只需要使用上下左右方向键就可以完成在不同的资讯源和文章之间的跳跃。细节做得很好,例如当你一不小心删除或已读某篇文章后,你可以直接使用标准快捷键 Command + Z 还原,也可以在 iOS 设备上使用摇一摇来撤回操作。

哲学

无论是设计还是功能,NetNewsWire 似乎没有太多的「亮点」,一切都显得中规中矩,但这不意味着 NetNewsWire 乏善可陈。

NetNewsWire 的创造者分享了他们的开发哲学:

我们认为 NetNewsWire 绝不应该崩溃,应该是没有 BUG 的。它应该足够快,并且比空气还轻。我们相信 NetNewsWire 的质量比单纯地增加功能更为重要,质量本来就应该是最重要的功能,可以让用户一次又一次放心地使用它。NetNewsWire 功能的更新,绝不应该以牺牲可靠性和速度为代价。

得益于开发者对于轻量、稳定的追求,NetNewsWire 的 Mac 程序包解压后不到 10 MB,而 iOS 应用大小仅 7 MB 左右。同时,NetNewsWire 的刷新速度真的很快,我使用了这么久也的确没有遇到崩溃的情况。

最后,请不要忘记 NetNewsWire 最值得称道的特点:开源且免费。目前为止,其他能够拥有相似功能和体验的 RSS 客户端无一例外都是收费的。

你可以在 App Store 或 官网 下载 NetNewsWire 的 iOS 及 macOS 版本。

相关推荐

探索Java项目中日志系统最佳实践:从入门到精通

探索Java项目中日志系统最佳实践:从入门到精通在现代软件开发中,日志系统如同一位默默无闻却至关重要的管家,它记录了程序运行中的各种事件,为我们排查问题、监控性能和优化系统提供了宝贵的依据。在Java...

用了这么多年的java日志框架,你真的弄懂了吗?

在项目开发过程中,有一个必不可少的环节就是记录日志,相信只要是个程序员都用过,可是咱们自问下,用了这么多年的日志框架,你确定自己真弄懂了日志框架的来龙去脉嘛?下面笔者就详细聊聊java中常用日志框架的...

物理老师教你学Java语言(中篇)(物理专业学编程)

第四章物质的基本结构——类与对象...

一文搞定!Spring Boot3 定时任务操作全攻略

各位互联网大厂的后端开发小伙伴们,在使用SpringBoot3开发项目时,你是否遇到过定时任务实现的难题呢?比如任务调度时间不准确,代码报错却找不到方向,是不是特别头疼?如今,随着互联网业务规模...

你还不懂java的日志系统吗 ?(java的日志类)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

谈谈枚举的新用法--java(java枚举的作用与好处)

问题的由来前段时间改游戏buff功能,干了一件愚蠢的事情,那就是把枚举和运算集合在一起,然后运行一段时间后buff就出现各种问题,我当时懵逼了!事情是这样的,做过游戏的都知道,buff,需要分类型,且...

你还不懂java的日志系统吗(javaw 日志)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

Java 8之后的那些新特性(三):Java System Logger

去年12月份log4j日志框架的一个漏洞,给Java整个行业造成了非常大的影响。这个事情也顺带把log4j这个日志框架推到了争议的最前线。在Java领域,log4j可能相对比较流行。而在log4j之外...

Java开发中的日志管理:让程序“开口说话”

Java开发中的日志管理:让程序“开口说话”日志是程序员的朋友,也是程序的“嘴巴”。它能让程序在运行过程中“开口说话”,告诉我们它的状态、行为以及遇到的问题。在Java开发中,良好的日志管理不仅能帮助...

吊打面试官(十二)--Java语言中ArrayList类一文全掌握

导读...

OS X 效率启动器 Alfred 详解与使用技巧

问:为什么要在Mac上使用效率启动器类应用?答:在非特殊专业用户的环境下,(每天)用户一般可以在系统中进行上百次操作,可以是点击,也可以是拖拽,但这些只是过程,而我们的真正目的是想获得结果,也就是...

Java中 高级的异常处理(java中异常处理的两种方式)

介绍异常处理是软件开发的一个关键方面,尤其是在Java中,这种语言以其稳健性和平台独立性而闻名。正确的异常处理不仅可以防止应用程序崩溃,还有助于调试并向用户提供有意义的反馈。...

【性能调优】全方位教你定位慢SQL,方法介绍下!

1.使用数据库自带工具...

全面了解mysql锁机制(InnoDB)与问题排查

MySQL/InnoDB的加锁,一直是一个常见的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?下面是不同锁等级的区别表级锁:开销小,加锁快;不会出现死锁;锁定粒度...

看懂这篇文章,你就懂了数据库死锁产生的场景和解决方法

一、什么是死锁加锁(Locking)是数据库在并发访问时保证数据一致性和完整性的主要机制。任何事务都需要获得相应对象上的锁才能访问数据,读取数据的事务通常只需要获得读锁(共享锁),修改数据的事务需要获...