LibrePods 通过逆向工程实现 AirPods 在非苹果设备上使用全部功能的开源项目
LibrePods 让你能在 Android 和 Linux 设备上使用原本苹果设备专属的 AirPods 功能,如切换降噪模式、佩戴检测、精确电量、头部手势和对话感知等。
💡 核心功能与平台支持
在开始前,请先了解不同平台的功能支持情况,部分高级功能需要特定条件。
| 功能 | Android 支持 | Linux 支持 | 备注 |
|---|---|---|---|
| 切换聆听模式 (降噪/通透等) | ✅ | ✅ | |
| 入耳检测 (自动播放/暂停) | ✅ | ✅ | |
| 精确电量 (耳机/充电盒) | ✅ | ✅ | |
| 对话感知 (说话时降低音量) | ✅ | ✅ | |
| 头部手势 (点头/摇头控制) | ✅ (需应用内购买) | ⛔ (不会实现) | |
| 自定义设置 (按住动作、麦克风等) | ✅ | 🔴 (计划中) | |
| 助听器模式 (音频调整) | ✅ (Root/VendorID伪装) | 🔴 (计划中) |
- 符号说明:✅ 已实现;🔴 计划中;⚪ 需特殊操作;⛔ 不会实现。
📲 在 Android 上部署 LibrePods
根据你的安卓设备和系统版本,安装方式有所不同。
方式一:从 Google Play 安装(推荐,无需 Root)
对于运行 Android 16 QPR3 或更高版本的 Google Pixel、OnePlus、Oppo、Realme 设备,可以直接从 Play 商店安装,无需 Root 即可使用大部分功能。
- 安装应用:在 Google Play 商店搜索 “LibrePods” 并安装。
- 连接 AirPods:通过系统蓝牙设置正常配对 AirPods。
- 打开应用:启动 LibrePods,它会自动识别已连接的 AirPods,并开启支持的增强功能。
方式二:从 GitHub 安装(需要 Root/Xposed)
如果你的设备不满足上述条件,则需要通过 Root 和 Xposed 框架来使用。
- 前提条件:设备已解锁 Bootloader 并获取 Root 权限,且安装了 Magisk 和 LSPosed 框架。
- 下载文件:从 GitHub Releases 页面 下载
btl2capfix.zip(Magisk模块) 和app-release.apk。 - 安装 Magisk 模块:在 Magisk 应用中安装
btl2capfix.zip并重启手机。此模块会修补蓝牙库,修复与 AirPods 通信的漏洞。 - 安装 APK:安装下载的
app-release.apk。 - 配置 Xposed 作用域:在 LSPosed 管理中,启用
btl2capfix模块并勾选“蓝牙”应用。
(可选)安装 Root 模块以获得额外权限
你可以安装系统级模块以获取在系统设置中显示电量、图标等功能。安装此模块后,不要再从 Play 商店安装或更新应用,以免签名冲突。
🐧 在 Linux 上部署 LibrePods
Linux 版本目前以社区贡献和重写为主,功能相对基础。
方式一:使用预编译二进制文件(推荐)
- 从 GitHub Releases 下载最新的 AppImage 或可执行文件。
- 也可从 GitHub Actions 下载最新的开发版(Nightly Build)。
- 为下载的文件添加可执行权限并运行即可。
方式二:从源码编译(高级用户)
安装依赖:根据你的发行版安装 Qt6、OpenSSL、PulseAudio 开发包和 CMake。
1
2
3
4
5
6
7
8# Debian/Ubuntu
sudo apt-get install qt6-base-dev qt6-declarative-dev qt6-connectivity-dev qt6-multimedia-dev qml6-module-qtquick-controls qml6-module-qtqml-workerscript qml6-module-qtquick-templates qml6-module-qtquick-window qml6-module-qtquick-layouts libssl-dev libpulse-dev cmake
# Arch Linux
sudo pacman -S qt6-base qt6-connectivity qt6-multimedia-ffmpeg qt6-multimedia openssl libpulse cmake
# Fedora
sudo dnf install qt6-qtbase-devel qt6-qtconnectivity-devel qt6-qtmultimedia-devel qt6-qtdeclarative-devel openssl-devel pulseaudio-libs-devel cmake编译项目:
1
2
3
4
5git clone https://github.com/kavishdevar/librepods.git
cd librepods/linux
mkdir build && cd build
cmake ..
make -j $(nproc)运行应用:编译完成后,在
build目录下执行./librepods即可。
Linux 常见问题与优化
媒体控制(播放/暂停)失效:如果触控手势无法控制媒体,需要启用 AVRCP 支持。
PipeWire/WirePlumber 用户:创建配置文件
~/.config/wireplumber/wireplumber.conf.d/51-bluez-avrcp.conf,并添加以下内容后重启 wireplumber:1
2
3monitor.bluez.properties = {
bluez5.dummy-avrcp-player = true
}PulseAudio 用户:启用
mpris-proxy服务:systemctl --user enable --now mpris-proxy。
高级功能(VendorID 伪装):要启用助听器等高级功能,需要让系统伪装成苹果设备。
- 编辑蓝牙配置文件:
sudo nano /etc/bluetooth/main.conf。 - 在
[General]部分添加:DeviceID = bluetooth:004C:0000:0000。 - 重启蓝牙服务:
sudo systemctl restart bluetooth。此操作可能需要重新配对 AirPods。
- 编辑蓝牙配置文件:
💎 总结
LibrePods 是一个强大的工具,能有效打破 AirPods 与苹果生态的绑定。
- Android用户:首选检查设备是否满足 Android 16 QPR3 的条件,满足则可直接从 Play 商店安装,体验最佳。不满足则需要 Root 和 Xposed,过程稍复杂。
- Linux用户:功能支持相对滞后,建议关注项目更新。高级功能需要通过 VendorID 伪装实现。
如果在部署中遇到问题,可以查阅项目的 GitHub Issues 或通过 Discord 社区 寻求帮助。







