安全性和用户体验俱佳,这 20+ Android 开源软件值得一试
Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。
文章代表作者个人观点,少数派仅对标题和排版略作修改。
本文旨在引介 F-Droid 中优秀的 Android 自由及开放源代码的软件(FOSS)。它们大多数免费,在数据安全方面较之专有软件们更胜一筹。由于 F-Droid 的存在,下载、安装和更新这些应用也比较方便。
以下部分应用亦可以从 Google Play 上获取,但若不是以支持开发者为目的,我并不推荐这样做。Google Play 等商店中上架的应用很有可能并非从公开的源代码编译而来,且大概率同 Google 共享用户使用数据。而 F-Droid 由机器直接编译1的策略和特有的标注体系可以很好的避免上述情况。
如果你不清楚在国内如何快速下载 F-Droid 应用的话,可以参考我写的一篇 旧文。我还撰写过 F-Droid 上主流服务的第三方客户端推荐文章,亦值得一读。
诸如 Feedly,Inoreader 等服务商虽自称 RSS 阅读器,但实际上缓存网站内容,再分发给自己的用户,借植入广告,设置订阅限制以推销会员服务,这既有损内容分发平台的利益,也影响用户浏览体验。如果读者只想用 RSS 来阅读,无多端同步需求的话,那么本地 RSS 阅读器更适合你。
Feeder 就这样一款本地阅读器。应用界面简洁,以绿色为强调色,支持从 OPML 批量导入订阅,订阅的条目和分类均没有任何限制。因为是本地应用,无需服务端,用户可以选择从主界面下拉以手动刷新订阅源,或者采用更耗电的后台定时刷新。
它还有一个非常好用的「获取全文」功能:如果网站不提供全文 RSS,点击文章右上方的文本按钮,即可抓取网页全文。想对某一订阅源整体启用这一功能,可以勾选编辑订阅 > 默认获取全文
。
Wallabag 是一个支持用户自己部署的稍后阅读服务。它也有数据位于欧洲的官方服务供用户选择,该服务需付费,年付价格 €9(约合 ¥68),但比动辄两百只为了无广告和无限标记的某些应用划算不少。
生态方面,Wallabag 有各大浏览器扩展和 JS 小书签用以快速添加网页到稍后读;除了本文介绍的 Android FOSS 版本,也有 iOS,Linux 应用。用户的阅读历史,对文章的标注都支持全平台同步。
应用可以添加 RSS 订阅,但阅读全文需要先点击添加
按钮添加到稍后阅读界面。此外,Android 版本 Wallabag 还是唯一一个为墨水屏阅读优化的稍后读应用,有定制的主题,能禁用滚动,用点按的方式翻页。
从名字可以看出,KeepassDX 是 Keepass 的修改版本。它克服了 Keepass 官方客户端长久以来存在的两个重大问题:丑和复杂。推荐配合覆盖主流桌面系统和浏览器的 KeepassXC 使用,两者密码库完美兼容。
就其本身而言,选择一个本地或者云端的密码库后,它能为主密码绑定生物识别或设备凭据,即可以实现生物识别解锁或设备密码解锁,无需再输入主密码。应用支持 Android 系统级别的自动填充和密码键盘两种输入方式。内嵌了多重验证,可以通过输入编码的方式为某条目绑定 TOTP。
应用配置支持导出,方便迁移和重装。
说到二次验证,生成一次性密码(OTP)目前有两种算法:TOTP 和 HOTP,无论是基于时间还是计数,两者反映在客户端实质是一条条以otpauth://
开头,以 secret
为核心的字符串,完全可迁移,并且不需要依赖其他的软件。但主流的 2FA 应用,Google Authenticator、Microsoft Authenticator 和 Authy,都要求 Google 框架,都不提供开放的导出方式。
如果你不想为了多重验证而启用乃至刷入 GMS 的话,那么可以尝试 Aegis。Aegis 支持各类主流服务的二次验证,并且无需 GMS 即可使用。应用本身提供了密码 + 生物识别的方式保护密钥,更重要的是,它能够导出所有二次验证条目为文本文件,用以导入其他软件或者重装时使用。
桌面端的本地 Markdown 编辑器乱花渐欲迷人眼,但 Android 平台上优秀的编辑器却不多。这里要推荐的是老牌选手 Markor 和后起之秀 Noteless。两者在杰出的 Markdown 编辑预览体验外,还提供了渲染[[
标记,自定义存储目录等特性。
Markor 使用底栏进行导航,除了第一屏的文件夹视图外,第二屏和第三屏分配给了笔记根目录的两个 文本文件,一个用于记录待办,一个用于快速记录想法。
Markor 更像一个本地编辑器,而 Noteless 目标显然是成为一个笔记管理工具。它使用侧边汉堡菜单进行导航,侧边栏的内容按标签对笔记的分类。添加标签的方式是使用笔记编辑界面右上角的菜单,原理仍然是修改笔记的元数据,只不过 Noteless 并不显示罢了。
虽然我们常常将文件的备份和同步连起来说,但两者实际上不能一概而论。备份是将数据复制一份放置到本地或者云端的其他位置,以备不测,这另一份数据可能永远都不会再打开,这是一个单向的过程;而同步是双向的,它让两个地方的数据保持一致,数据在两个位置都会被使用。Syncthing 的目的是解决同步问题。
和它的同类应用 Resilio Sync 一样,Syncthing 也是使用了 P2P 技术。在两个或者多个设备上安装了 Syncthing 之后,添加对方的设备,然后设置将本地的文件夹共享,软件即可开始工作。同步的速度非常可观,在我的网络环境2下能达到 25 MB/s。Android 版的 Syncthing 能够配置为自动同步,或者指定状态下同步,它还支持类似于 Git 的版本控制以及类似于.gitignore
的选择性忽略规则。
Syncthing 拥有全平台的客户端,你可以用它同步 Obsidian 笔记库,同步截图等等。
文件的同步说完了,下面介绍一款浏览器书签的同步应用。就浏览器而言,重要的数据无非两个:密码和书签。除官方同步服务之外,密码有密码管理器负责同步,而书签同步的开源解决方案并不多。XbrowserSync 就是这么一款支持自托管的书签同步应用。
首先,我建议先在主力的浏览器上3安装同名插件(Chrome,Firefox),根据提示先关闭浏览器本身的书签同步服务(如 Google 帐号的同步),再输入密码以在官方服务器上创建帐号。该插件会自动同步所有书签。
Android 端的设置如下:我们输入密码时 XbrowerSync 自动为我们生成了一个 ID,ID 可以通过点击插件弹出菜单的齿轮获得。点击SyncID
以获取二维码,用 Android 端应用扫描这个二维码,输入密码后即可配置完成。
Android 端应用并不能将书签同步到 Android 的所有浏览器上,它的作用只是浏览、编辑、打开已经同步的书签。如果我们需要在 Android 上添加书签,可以使用 Android 的分享菜单,或者在 App 中手动添加。
播客亦面临着和 RSS 新闻一样的处境,原本单纯的音频聚合服务,被一些服务商植入了广告和各类限制。对一部分读者而言,一个简单纯净的本地播客应用可能体验更好。
AntennaPod 这款应用至今已经维护了将近十年,仍然保持着稳定的更新频率,这即使对于一款商业应用来说也难得可贵。就其功能来说,一款播客应用该有的功能——发现播客,收听下载,统计数据——它都有。
AntennaPod 添加了对 GPodder 账户的支持。后者是一个开源的,支持自建的播客订阅与收听数据同步服务。关于这一服务及其支持的所有客户端,可以在访问项目 官网 详细了解。
电话、短信、文件管理器、通讯录、录音……这些往往是系统预装的 App,其中一些不见得真的安全好用。它们被厂商们注入了太多的私货:跟踪、第三方服务嵌入甚至广告。作为系统应用的它们还享有特权,逍遥法外。倘若读者有这样的担忧,或者觉得 ROM 自带各类基础 App 不好用,那么不妨试试 Simple 套件。
以 Simple 开头的系列应用目前有十几个,它们的几乎涵盖了系统所有的基础功能。像它们的名字所揭示的那样,这些应用真的很简单。它们大多数无需联网,除了必要的权限,必要的组件之外,多余的东西一概没有。
Simple 套件可以由 Simple Thank You 统一管理强调色和图标颜色。我们能在 Google Play 上购买付费购买这些组件以支持开发者。
Android 自带的「自动旋转屏幕」功能有一些问题:它是应用于全局,而不能针对某个应用单独设置。相信开了此项设置的读者一定有不断调整屏幕角度,想让某些应用恢复横屏/竖屏的经历。
有了 Auto Auto-Rotate 之后,就不必这么麻烦了。因为需要横屏使用的往往就那么几个特定应用(如图库,视频),只需要在应用中单独为这些应用打开「自动旋转应用」设置即可,不在此项目下的应用不会受到「自动旋转屏幕」模式的影响。
使用该应用,首先要授予无障碍权限,然后需要为它关闭电池优化,这样才能保证后台存活。
Loop 是一个功能齐全的习惯养成工具。通俗的说法就是「打卡」。
它允许用户创建两类事项:是否类(是否早睡)和可量化类(走了多少步)。创建事项后,Loop 会在设定的时间提醒我们完成条目,然后勾选以完成一次打卡。日积月累,通过其可视化的图表就能分析出一项习惯保持得如何。
同样,它的数据也能导出为自有格式,自有格式可供 Loop 导入。它也支持将我们的数据导出为 CSV 在 Excel 等软件查看。
用户在拦截广告方面的努力不可谓不多。在路由器,浏览器,各个系统等不同层面,相关的软件总是有市场。AdAway 就是这么一款资历颇老的 Android 系统级别广告拦截应用。
它有两种模式可供选择,无需 Root 的本地 VPN 模式和更加省电的 Root 模式。关于 VPN 模式,我已经在 Blockada 的介绍中提到过相关的原理,而 Root 模式则是使用了简单粗暴的 Hosts 方式。前者虽然无需 Magisk 等软件协助,但是要常驻后台,所以更加费电,并且默认情况下不能和其他的代理程序共存。 后者则无需后台服务,但获取 Root 还是相对复杂一些。
应用默认订阅了三个官方的广告拦截规则,如果需要,可以自行添加其他的条目。读者可以在 此网站 寻找相关的规则。
我换了几部手机,也为一些手机换了不少从 ROM,这个应用一直是必装软件之一。由于 AOSP Based 的各类 Vanilla 系统默认没有预装一个条形码/二维码扫描软件,所以部分应用是无法工作的。如果此时设备中没有对应的软件的话,一些 App 就会自动跳转到 Binary Eye 的商店界面。
软件可以使用前置或者后置摄像头扫描,也提供了一个二维码/条形码制作工具。
所谓端到端加密(E2EE),即用于解密的密钥只掌握在通讯的双方手中,网络提供商、软件开发商皆无法窥探传输数据的内容。E2EE 用在文件传输与备份4方面,则是指用于解密的密钥只被用户掌握,服务商无法解密。对于重要的数据,一个支持端对端加密的同步工具是必要的。
Android 版 EteSync 用于同步用户的通讯录、日历和笔记,使用了端对端加密的方式。EteSync 本身覆盖全平台,由于开放源代码,它既支持自建(你可以在 官网 教程处找到详细的步骤),又能防止类似微软 Skype 那样的私有软件植入后门5破坏加密的恶意行为。注册官方的帐号需要付费,价格为 $2 每月。
EteSync 本身只是一个同步程序,通讯录、日历数据需要借助外部的软件浏览。端对端加密也并非万全之策,比如说苹果最近推行了一项技术,能在未进行加密时对数据在本地进行扫描。
下列 Android FOSS,少数派的其他文章有更为详细和精彩的讲解。这些文章内容尚未过时,因此本文不做展开,将他们列在此处,并附上相关介绍文章:
软件即服务(Software as a Service 或 SaaS)的实践我们已经司空见惯。理查德•斯托曼在他的《服务器真正是在为谁服务》一文中为 SaaS 换了一种表述:作为软件替代品的服务(Service as a Software Substitude 或 SaaSS)。他认为,私有软件让用户无法窥知软件到底做了什么,因为用户没有源代码;而 SaaSS 则是将软件这个实体也一并抹除,用户的各类数据从自己的电脑被迫迁移到了别人的电脑上(被包装成为新名词:「云」)。软件和服务有实质上的区别,当软件被服务替代,作为用户的我们到底还拥有些什么?
本文所引介的其中一些应用,或对应着一些私有软件,或对应着市场上售卖会员的服务,这些商业公司通过控制软件、持有与处理我们的私人数据来索取费用,但它们真的如宣传的那样可信吗?
当读者开始对某些商业公司起疑心的时候,那么文章中这些安全、注重隐私、用户体验也不错的软件或许值得一试。
题图:Technology vector created by stories
> 下载少数派 客户端 、关注 少数派公众号 ,了解更妙的数字生活 🍃
> 想申请成为少数派作者?冲!
© 本文著作权归作者所有,并授权少数派独家使用,未经少数派许可,不得转载使用。