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

322 天前
 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
4550 次点击
所在节点    macOS
61 条回复
Yi
320 天前
不知道是不是 airbuddy 的同步功能( magic handoff )起了作用,虽然 iPhone 没用线连接过这台 Mac 也没信任过,启用 "通过蓝牙发现 iPhone / iPad(蜂窝版)" 选项和下面两个实验性选项后 iPhone 的电量可以直接显示在 AirBattery 上,这体验,倍儿顺滑
lihaoyun6
320 天前
@Yi 喜欢就好, 哈哈哈哈
lihaoyun6
320 天前
@Yi
"不知道是不是 airbuddy 的同步功能( magic handoff )起了作用"
不是的, "通过蓝牙发现 iPhone / iPad(蜂窝版)"这个功能的原理是:
iPhone 和 iPad(蜂窝版)会通过蓝牙广播, 不断的向周围发送有关自己"个人热点"的状态信息. 你点击 macOS 菜单栏上的 wifi 按钮, 会看到里面有自己 iPhone 的热点信息, 靠的就是解析这个广播数据.
AirBattery 在启用了"通过蓝牙发现 iPhone / iPad(蜂窝版)"之后, 也会去读取并解析这套蓝牙广播数据, 并从中获取到设备的电量信息. 但是这套数据只包含电量, 却不包含充电状态. 所以才会有下面那个实验性的"推测蓝牙设备充电状态"功能.
Foralrec
320 天前
体验真棒,开机启动了。
OP 另外一个软件要是能比肩 ScreenStudio 就好了,想买断/捐赠 不想订阅
lihaoyun6
320 天前
2024/04/26:

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

https://github.com/lihaoyun6/QuickRecorder/releases/latest
Yi
320 天前
@lihaoyun6 学到了,哈哈哈。

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

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

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

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

© 2021 V2EX