EMC易倍(中国)官方网站-引领体育潮流

易倍体育网站:AndroidOpenSourceProject-EMC易倍体育|官方网站
易倍体育网站:AndroidOpenSourceProject
发布时间:2025-05-20 07:41:22

  Android 提供了蓝牙的完整实现,可支持多种常见的车载蓝牙配置文件。其多项增强功能还可优化其他设备和服务的性能和使用体验。

  Android 中的CarBluetoothService会维护当前用户的蓝牙设备以及连接到 IVI 的每个配置文件的优先级列表。设备按指定的优先级顺序连接到配置文件。何时启用、停用配置文件以及将设备连接到配置文件取决于默认的连接政策,如有需要,可使用资源叠加层覆盖该政策。

  您还可以在service/src/com/android/car/BluetoothDeviceConnectionPolicy.java中找到蓝牙连接管理政策。默认情况下,该政策会提供有关蓝牙应在哪些情况下连接到绑定的设备以及在哪些情况下断开连接的信息,并管理应在哪些汽车特有情形下开启和关闭适配器。

  如果默认的 Automotive 政策无法满足您的需求,可将其停用并改用您自己的自定义政策。您的自定义政策至少需要确定何时启用和停用蓝牙适配器,以及何时连接设备。您可以根据多种事件来启用/停用蓝牙适配器以及启动设备连接,包括因特定的汽车属性发生变化而触发的事件。

  政策的核心功能之一是在恰当的时机开启和关闭蓝牙适配器。您可以使用BluetoothAdapter.enable()和BluetoothAdapter.disable()框架 API 来启用和停用适配器。这些调用应与用户通过“设置”或任何其他方式选择的持久状态一致。其中一种方式如下所示:

  借助自定义政策,您可以根据需要来确定哪些事件代表着启用和停用适配器的最佳时机。其中一种方法是在CarPowerManager中使用电源状态MAXIMUM_CONNECTED_DEVICES:

  同样,确定哪些事件应触发连接设备的操作后,CarBluetoothManager会提供connectDevices()API 调用,根据为每个蓝牙配置文件定义的优先级列表继续连接设备。

  要验证连接政策的行为,最简单的方法是在 IVI 上启用蓝牙,然后验证蓝牙能否以合理的顺序自动连接到相应设备。您可以通过“设置”界面或以下 adb 命令开启/关闭蓝牙适配器:

  最后,如果您已构建自己的 Automotive 政策,那么验证任何自定义连接行为都需要控制您选择用来触发设备连接的事件。

  Android 中的 IVI 支持通过蓝牙同时连接多台设备。通过多设备蓝牙电话服务,用户可以同时连接多台设备(例如个人电话和工作电话),并使用任一设备进行免触摸通话。

  连接限制由各个蓝牙配置文件强制执行,这通常属于配置文件服务本身的实现范围。默认情况下,CarBluetoothService不再对可连接的设备数量上限作出进一步判断。

  借助蓝牙免触摸配置文件 (HFP),可在车上通过所连接远程设备拨打和接听电话。每台设备连接都会单独向TelecomManager注册一个电话帐号,TelecomManager 会将可用电话帐号发送到 IVI 应用。

  当用户从设备拨打或接听电话时,相应的电话账号会创建一个HfpClientConnection对象。拨号器应用会与HfpClientConnection对象进行交互以管理通话功能,例如接听或挂断电话。

  需要注意的是,默认的拨号器应用不支持通过 HFP 同时连接到多台设备。要实现通过 HFP 连接到多台设备,需要通过自定义来允许用户选择使用哪个设备账号拨打电话,这样,应用便可以使用正确的账号来调用telecomManager.placeCall。 您需要验证其他支持多设备的功能能否正常运行。

  拨打紧急呼叫电话是一项重要的车载电话和蓝牙功能。通过 IVI 发起紧急呼叫的方法有多种,具体包括:

  尽管 eCall 设备对安全保障而言至关重要,但目前尚未将其集成到 Android 中。您可以使用ConnectionService通过 Android 提供紧急呼叫功能,该方法还具有为紧急呼叫引入无障碍选项的优势。如需了解详情,请参阅构建通话应用。

  以下示例展示了如何创建用于紧急呼叫的ConnectionService:

  蓝牙并非专为紧急呼叫而设计。因此,应仅在汽车没有特殊的 eCall 设备时考虑该选项。

  蓝牙电话簿访问配置文件 (PBAP) 会从已连接的远程设备下载联系人信息和通话记录。PBAP 可维护一个可搜索的联系人信息汇总列表,该列表由 PBAP 客户端状态机进行更新。每台已连接的设备都是与单独的 PBAP 客户端状态机交互,因此在用户拨打电话时,联系人会与适当的设备相关联。

  MAXIMUM_CONNECTED_DEVICES的连接指定了 IVI 允许同时连接的 PBAP 设备数量上限。PBAP 客户端会将每个已连接设备的联系人信息存储在联系人提供程序中,应用可进行访问以获取每台设备的电话簿。此外,配置文件同时获得 IVI 和移动设备的授权时才能连接。当 PBAP 客户端断开连接时,内部数据库会移除与之前所连接设备上的所有联系人信息和通话记录。

  MAXIMUM_CONNECTED_DEVICES指定了 IVI 允许同时连接的 MAP 设备数量上限。同时获得 IVI 和移动设备的授权时每个连接才能传输短信。高级音频分发配置文件

  易倍体育官方网站 Emc易倍体育

  借助蓝牙高级音频分发配置文件 (A2DP),汽车可以接收来自已连接的远程设备流式传输的音频。与其他配置文件不同,该配置文件在原生堆栈而非 Java 中设置可连接的 A2DP 设备的数量上限。目前已使用

  借助蓝牙音频/视频远程控制配置文件 (AVRCP),汽车可以控制和浏览连接的远程设备上的媒体播放器。由于 IVI 充当着 AVRCP 控制器的角色,因此任何会影响音频播放的已触发控件都依赖于与目标设备的 A2DP 连接。

  易倍体育官方网站 Emc易倍体育

  要让 IVI 通过 AVRCP 浏览 Android 手机上的特定媒体播放器,手机上的媒体应用必须提供

  com.android.bluetooth访问相应服务。构建媒体浏览器服务一文详细介绍了如何实现这一点。