[开发者自荐] AirBattery: 在 Mac 端获取所有设备的电量并显示在 Dock 或状态栏上

2024-04-24 17:52:13 +08:00
 lihaoyun6

软件名称


AirBattery

官网&下载

官方网站: AirBattery
下载地址: 点此前往
系统要求: macOS 11 或以上版本

一句话简介

在 Mac 端获取你所有设备的电量信息, 并显示在 Dock 栏或状态栏或系统小组件中
支持 iPhone / iPad / iPod touch / AirPods / Apple Watch / Magic 键鼠等..

软件特色

  1. 使用 SwiftUI 编写, 支持状态栏图标/系统小组件/低电量提醒等功能

  2. 零配置全自动获取周边设备电量信息, 适配多种设备

  3. 完全免费开源, 代码透明, 不收集上传任何用户隐私

注: 部分代码由 ChatGPT 生成或整理

使用注意

软件截图

更新日志 (2024/04/11)

v1.2.9:

本软件完全开源免费使用. 如果用的顺手, 可以在 github 页面最底部扫码打赏.
您的支持是我创造更多开源软件的动力 0v0
5243 次点击
所在节点    macOS
61 条回复
Yi
2024-04-26 16:55:21 +08:00
不知道是不是 airbuddy 的同步功能( magic handoff )起了作用,虽然 iPhone 没用线连接过这台 Mac 也没信任过,启用 "通过蓝牙发现 iPhone / iPad(蜂窝版)" 选项和下面两个实验性选项后 iPhone 的电量可以直接显示在 AirBattery 上,这体验,倍儿顺滑
lihaoyun6
2024-04-26 17:28:03 +08:00
@Yi 喜欢就好, 哈哈哈哈
lihaoyun6
2024-04-26 17:30:37 +08:00
@Yi
"不知道是不是 airbuddy 的同步功能( magic handoff )起了作用"
不是的, "通过蓝牙发现 iPhone / iPad(蜂窝版)"这个功能的原理是:
iPhone 和 iPad(蜂窝版)会通过蓝牙广播, 不断的向周围发送有关自己"个人热点"的状态信息. 你点击 macOS 菜单栏上的 wifi 按钮, 会看到里面有自己 iPhone 的热点信息, 靠的就是解析这个广播数据.
AirBattery 在启用了"通过蓝牙发现 iPhone / iPad(蜂窝版)"之后, 也会去读取并解析这套蓝牙广播数据, 并从中获取到设备的电量信息. 但是这套数据只包含电量, 却不包含充电状态. 所以才会有下面那个实验性的"推测蓝牙设备充电状态"功能.
Foralrec
2024-04-26 18:01:16 +08:00
体验真棒,开机启动了。
OP 另外一个软件要是能比肩 ScreenStudio 就好了,想买断/捐赠 不想订阅
lihaoyun6
2024-04-26 20:34:05 +08:00
2024/04/26:

QuickRecorder v1.0.7 更新日志:
- 系统要求降低至 macOS 12.3
- 添加了快捷键支持
- 添加了"屏幕放大器"功能
- 添加了"保存当前帧截图"功能
- 修复了某些界面中的布局错位问题
- 开机自启动时默认不会弹出主面板

https://github.com/lihaoyun6/QuickRecorder/releases/latest
Yi
2024-04-27 07:13:09 +08:00
@lihaoyun6 学到了,哈哈哈。

除了电量数据刷新更『即时』外又发现一个优点:airbuddy 只会在最初(基本上是刚安装好时)显示与 iPhone 配对的 Watch 的电量,airbattery 则可以一直显示手表电量。

另外不知道是不是 BUG ,macOS 12 在状态栏点击 airbattery 图标后再点击设置或关于无法打开设置或弹出关于,macOS 14 下无问题。
lihaoyun6
2024-04-27 08:19:53 +08:00
@Yi 这个问题我试了一下, 但是暂时无法复现.
我使用 macOS 12.4 系统的虚拟机进行了测试, 点击菜单栏图标, 并在弹出的列表菜单左上角点击齿轮图标, 是可以打开设置窗口的, 关于也是可以打开的😢
wellblink
2024-04-27 11:26:49 +08:00
试了一下很好用,有两个建议:1.能否增加 Dock 栏和状态栏同时不显示的功能,因为我只想用到小组件
2.能否增加小组件背景磨砂玻璃的选项开关,感觉白色一片不太好看
lihaoyun6
2024-04-27 11:47:20 +08:00
@wellblink 第一个需求可以做到, 我会在后续版本中添加选项
第二个需求做不到, 因为只有苹果官方的小组件可以使用高斯模糊背景, 这是一个私有 API, 第三方小组件用不了
lw0717
2024-04-27 14:38:47 +08:00
OP 厉害了
jasongin
2024-04-27 16:13:49 +08:00
很好用,感谢
KyrieJoshua
2024-04-27 18:03:47 +08:00
支持一下,很符合我的需求!
SEVLT
2024-04-27 22:52:10 +08:00
好运哥! Big Sur 更新时在 qq 群和你讨论过图标,从那起也一直在用你的 capXDR ~感谢
SEVLT
2024-04-27 22:53:58 +08:00
前两天也刚把你的 QuickRecorder 收入囊中
ixuefeng
2024-04-28 12:16:05 +08:00
感谢大佬,别的都很好,就是为啥手表的电量没在列表里出现?,能做的各种尝试都做了。
lihaoyun6
2024-04-28 12:28:24 +08:00
@ixuefeng Watch 的信息只有在 iPhone 是"通过 WiFi 发现"的情况下才可以被读取到, 而且 Watch 是不能被独立读取的, 只能通过它所与之配对的主机 iPhone 才能获取到
ixuefeng
2024-04-28 13:14:01 +08:00
@lihaoyun6 收到,晚点试试
klaus1105
2024-04-28 13:39:48 +08:00
可以添加一个开关,使得可以隐藏状态栏和 dock 栏的组件,只保留桌面小组件来看吗?还有可不可以只显示与本机配对的蓝牙设备,我的鼠标 airbuddy 可以显示电量,但是 airbattery 不显示,但是显示一个 M-Pencil ,也不是我的设备。
CivAx
2024-04-28 14:22:12 +08:00
之前用过类似功能的 Cloud Battery ,但是要求 Watch 必须安装表盘组件持续运行才能读取到电量,同时无法读取 Apple Pencil 、鼠标等绑定单台设备的配件,不知道你的这个有解决这种痛点吗?
lihaoyun6
2024-04-28 15:10:59 +08:00
@CivAx
AirBattery 通过整合多种数据渠道, 基本上做到了"无客户端 + 无感获取", 不需要在被检测设备上安装任何特殊 App.

对于 Apple Watch 的电量信息, AirBattery 会通过检索局域网中与之配对的主机 iPhone, 并使用"lockdown proxy"方式通过 WiFi 访问 iPhone 的 lockdown 服务以读取准确的 Watch 实时电量.

对于 Apple Pencil 我也无能为力. 因为 AirBattery 获取蓝牙设备电量是通过读取 BLE 广播报文实现的. 而蓝牙设备一旦和配对的主机建立连接之后, 通常情况下就不会再向外发射广播报文. 而 Pencil 基本上是和 iPad 实时保持连接的... 真的抢不过来🫠. 而且就算使用某些小手段强行抢断 Pencil 与 iPad 的连接, 读取到了电量, 也会因为 Pencil 没有连接到 iPad 而导致无法正常使用, 得不偿失...

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1035356

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX