ylih - 耳机里的人生
记录每副耳机能用多少小时。离线运行,永久保存,注重隐私
新版本 1.1.3
• 仅涉及构建与打包的改动。界面没有任何变化。
耳机迟早会用坏。在那之前,ylih 会回答关于一副耳机唯一真正重要的问题:你用它听了多少个小时?
每次耳机连接,ylih 都会记下时间。每次断开,它也会记下时间。这就是整个想法——正因为一次连接只是两个时间戳,应用根本不需要在后台运行就能完成记录。
记录内容
• 每副实体耳机的总使用时长。耳机报废后,将其退役——总时长就此定格,同款耳机的下一副会以第 2 代的身份从零开始计算,新旧数字永远不会混在一起。
• 每一次连接,永久保存:连接时间、断开时间,以及结束的原因。
• 播放时长(可选):这段连接时间里,有多少是真正在播放音频,这样挂在脖子上就不会被算作在听。
• 每小时成本,只要你填写购买价格。看着这个数字不断下降会很有成就感。
两种追踪模式
仅蓝牙——默认模式。应用不运行任何程序,通知栏中不会出现任何内容,也没有额外的电量消耗,因为 Android 即使在应用关闭时也会将连接事件传递给它。
详细追踪——可选。可记录有线和 USB 耳机,并统计播放时间与连接时间的比例。它需要一条静默的最低优先级通知,因为 Android 只会把有线插拔事件报告给正在运行的应用。这也是这条通知存在的唯一原因。
无论哪种模式,蓝牙耳机都会被追踪。
多年后依然可信的数字
如果一次崩溃或重启悄悄多算了十二个小时,长期的总时长就毫无意义了。因此:
• 因重启或崩溃而未能正常关闭的连接,会在其最后一次已知的心跳时刻关闭,且绝不会晚于手机开机的那一刻。手机关机期间的时间永远不会被计入。
• 如果耳机在重启后仍处于连接状态,应用会开始一段全新的连接,而不是把旧的连接跨过这段间隔硬拉长。
• 连接处于打开状态时会持续发送心跳,因此即使漏掉一次断开事件,造成的误差也是有限的。
从设计上就保证隐私
ylih 没有联网权限。没有账户,没有分析统计,没有广告,也没有追踪。一切都保存在你手机上的本地数据库中——唯一能把它复制到设备之外的,是 Android 自带的备份功能,前提是你开启了它。
设置 → 导出 会把你的全部历史记录写成可读的 JSON 文件,导入 则可以将其恢复,因此换新手机也不会让你丢失自己的数字。
权限
• 附近的设备(蓝牙):用于接收连接事件并读取耳机名称。没有这项权限,蓝牙追踪就完全无法工作。
• 通知:仅用于详细追踪功能的通知。
• 开机自启:用于关闭那些因关机而未能正常上报的连接。
基于 MIT 许可协议开源。
每次耳机连接,ylih 都会记下时间。每次断开,它也会记下时间。这就是整个想法——正因为一次连接只是两个时间戳,应用根本不需要在后台运行就能完成记录。
记录内容
• 每副实体耳机的总使用时长。耳机报废后,将其退役——总时长就此定格,同款耳机的下一副会以第 2 代的身份从零开始计算,新旧数字永远不会混在一起。
• 每一次连接,永久保存:连接时间、断开时间,以及结束的原因。
• 播放时长(可选):这段连接时间里,有多少是真正在播放音频,这样挂在脖子上就不会被算作在听。
• 每小时成本,只要你填写购买价格。看着这个数字不断下降会很有成就感。
两种追踪模式
仅蓝牙——默认模式。应用不运行任何程序,通知栏中不会出现任何内容,也没有额外的电量消耗,因为 Android 即使在应用关闭时也会将连接事件传递给它。
详细追踪——可选。可记录有线和 USB 耳机,并统计播放时间与连接时间的比例。它需要一条静默的最低优先级通知,因为 Android 只会把有线插拔事件报告给正在运行的应用。这也是这条通知存在的唯一原因。
无论哪种模式,蓝牙耳机都会被追踪。
多年后依然可信的数字
如果一次崩溃或重启悄悄多算了十二个小时,长期的总时长就毫无意义了。因此:
• 因重启或崩溃而未能正常关闭的连接,会在其最后一次已知的心跳时刻关闭,且绝不会晚于手机开机的那一刻。手机关机期间的时间永远不会被计入。
• 如果耳机在重启后仍处于连接状态,应用会开始一段全新的连接,而不是把旧的连接跨过这段间隔硬拉长。
• 连接处于打开状态时会持续发送心跳,因此即使漏掉一次断开事件,造成的误差也是有限的。
从设计上就保证隐私
ylih 没有联网权限。没有账户,没有分析统计,没有广告,也没有追踪。一切都保存在你手机上的本地数据库中——唯一能把它复制到设备之外的,是 Android 自带的备份功能,前提是你开启了它。
设置 → 导出 会把你的全部历史记录写成可读的 JSON 文件,导入 则可以将其恢复,因此换新手机也不会让你丢失自己的数字。
权限
• 附近的设备(蓝牙):用于接收连接事件并读取耳机名称。没有这项权限,蓝牙追踪就完全无法工作。
• 通知:仅用于详细追踪功能的通知。
• 开机自启:用于关闭那些因关机而未能正常上报的连接。
基于 MIT 许可协议开源。
- 作者: Davide Palma
- 许可: MIT License
- 问题跟踪系统
- 源代码
- 更新日志
- 构建元数据
- 可重复性状态
版本
尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。
下载 F-Droid-
arm64-v8aarmeabi-v7ax86x86_64该版本需要 Android 6.0 及以上版本。
此包由原始开发者构建并签名,并保证对应于此源代码 tarball。




