找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

975

积分

0

好友

139

主题
发表于 昨天 21:04 | 查看: 1| 回复: 0

苹果产品在硬件体验上确实出色,但其生态壁垒也常为人所诟病。以AirPods为例,其音质、降噪、通透模式等表现一流,但一旦离开iPhone等苹果设备,便会退化为基础蓝牙耳机,诸多高级功能均无法使用。

问题并非出自耳机本身,而是苹果通过私有蓝牙协议,将这些功能锁定在了自家生态内。一款名为LibrePods的开源项目,正是为了解决这一问题而生。它通过逆向工程实现了AirPods的私有协议,成功将这些被封锁的高级功能带到了Android与Linux设备上。

LibrePods项目截图

项目地址:https://github.com/kavishdevar/librepods

目前该项目已在GitHub上获得超过21k的Star,关注度持续攀升。

Star数截图
关注度图表

LibrePods的核心目标明确:在非苹果设备上完全解锁AirPods的所有高级功能。它并非提供一个替代UI,而是从底层实现协议,让Android或Linux系统能够识别并调用你已为之付费的硬件能力,包括降噪控制、通透模式、入耳检测、辅听功能和精准电量显示等。

简而言之,硬件是你的,功能不应只服务于苹果生态。

功能概念图

设备兼容性

  • AirPods Pro(第二代):完全支持且经过充分测试。
  • AirPods Pro(第三代):完全支持(心率监测功能除外)。
  • AirPods Max:完全支持(客户端可能显示部分不支持的功能)。
  • 其他AirPods型号:基础功能(如电池状态、入耳检测)应可正常工作。

尽管目前主要使用AirPods Pro 2进行测试,但基于对macOS蓝牙协议栈的分析,其他型号使用的协议应基本相同。

主要功能一览

  • 降噪控制:无需长按耳机柄,轻松切换降噪、通透与关闭模式。
  • 入耳检测:佩戴或取下耳机时自动播放/暂停媒体,取下时可切换至手机扬声器。
  • 精确电量:实时显示准确的耳机与充电盒电量。
  • 头部手势:通过点头等动作接听电话。
  • 对话感知:检测到用户说话时自动降低媒体音量。
  • 辅听功能 *
  • 自定义通透模式 *
  • 多设备连接 *(最多支持2台设备)
  • 其他自定义:重命名耳机、自定义按压操作、所有辅助功能设置等。

注:标有 * 的功能需要将设备VendorID伪装为苹果ID后才能启用。

平台支持详情

1. Linux平台
  • 旧版Linux客户端功能有限,相关文档可参阅项目Linux目录下的README。
  • 新版本正在重写中,旨在实现完整功能支持。
  • 可通过修改系统蓝牙配置,将设备伪装为Apple产品以启用更多功能。
2. Android平台

Android是目前功能支持最完善的平台,但涉及Root权限要求

  • ColorOS / OxygenOS 16
    • 基础功能可在无Root权限下使用。
    • 通透模式自定义、辅听、蓝牙多点连接等功能需要Root权限。
  • 其他Android系统
    • 必须获取Root权限并安装Xposed框架。
    • 此限制源于Android蓝牙协议栈的系统级Bug,在Google或设备制造商修复该问题前暂无例外方案。

关键机制:VendorID伪装

将蓝牙设备的VendorID更改为苹果的标识(004C),是触发AirPods向非苹果设备开放“专属功能”的关键。

  • Linux设置方法
    编辑系统蓝牙配置文件 /etc/bluetooth/main.conf,添加一行:
    DeviceID = bluetooth:004C:0000:0000
  • Android设置方法
    在LibrePods应用内直接启用“Act as Apple device”选项。

使用注意事项

  • 在近期AirPods固件更新后,必须启用“Off listening mode”才能切换至“关闭”模式。
  • 当两只耳机同时被取下时,应用会自动将音频输出切换到手机扬声器。
  • Android系统可能会反复尝试重连A2DP音频流,应用会主动断开这些连接以维持控制。
  • 修改AirPods名称后,需在Android系统中重新配对才能生效。
  • 若希望在Android系统设置的蓝牙设备列表中显示AirPods图标及电量,需要将LibrePods应用安装为系统应用。

通过LibrePods项目,Android用户终于能够充分发挥手中AirPods硬件的全部潜力,打破了生态壁垒,这无疑是开源项目力量的一次精彩体现。




上一篇:前端面试题深度解析:不点击鼠标触发事件的方法与自动化实战
下一篇:阿里云2025校招薪资解读与AI应用开发技术栈分析
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-17 16:31 , Processed in 0.146435 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表