当前位置:首页 » 安卓系统 » android蓝牙hfp

android蓝牙hfp

发布时间: 2022-07-15 21:38:25

1. Android Bluetooth怎么同时建立A2DP,HSP/HFP连接

牙耳机现在主要有三大规格———HSP、HFP和A2DP。
HeadsetPro-file(HSP)代表耳机功能,提供手机与耳机之间通信所需的基本功能。
HandProfile(HFP)则代表免提功能,HFP在HSP的基础上增加了某些扩展功能。
Advanced Audio Distribution Profile(A2DP),指的是 蓝牙音频传输模型协定。

HFP格式的蓝牙耳机支持手机功能比较完整,消费者可在耳机上操作手机设定好的重拨、来电保留、来电拒听等免提选项功能。
A2DP是高级音频传送规格,允许传输立体声音频信号,相比用于 HSP 和 HFP 的单声道加密,质量要好得多。
A2DP能够让两个同样支持蓝牙音效传输的装置互相连接,都能输出如CD音质(16 bits,44.1 kHz)般的音乐。假如有一方没有支持A2DP的话,这时音效就只能输出Handsfree Profile(8 bits,8 kHz),就算耳机是采用双耳筒的设计,也只能有一般电话的单声道音质,与真正的立体声相去甚远。

2. 蓝牙模块service uuid有什么用

Android系统的源码中蓝牙部分的分布式这样的:1.App部分主要包括OPP和PBAP以及HFP,当然还有settings部分,代码分布如下:(1)/packages/app/Bluetooth/src/com/android/bluetooth/opp(2)/packages/app/Bluetooth/src/com/android/bluetooth/pbap(3)/packages/app/Phone/src/com/android/phone/中和BT相关的部分,主要是HFHS打电话相关的(4)/packages/app/Settings/src/com/android/settings/bluetooth/主要是蓝牙开启,搜索,配对等2.Framework部分主要包括BluetoothAdapter,BluetoothService,BluetoothEventLoop,BluetoothA2dpService等核心类,代码分布如下:(1)/frameworks/base/core/java/android/server/包含BluetoothService,BluetoothEventLoop等核心类,但是并没有向用户应用程序提供接口,属于系统的类。(2)/frameworks/base/core/java/android/bluetooth包含了BluetoothAdapter,BluetoothSocket,BluetoothServerSocket等一系列类,这些类是系统向应用程序提供的接口,编写蓝牙相关的应用程序时会用到这些类,检查BT是否打开,搜索设备等等。如果编写蓝牙应用程序,需要熟悉该部分类的功能。(3)/frameworks/base/core/jni/中包含Bluetooth相关的文件,如android_server_BluetoothService.cpp该部分主要是java层和c/c++层进行通信的3.Bluez部分,主要包括各个协议的实现,如A2dp,AVRCP,AVDTP,HID,HDP,PAN,DUN以及对BThost的实现,通过该部分向BTControler部分发送HCI命令,代码分布服下:/external/bluetooth/bluez4.BluetDroid部分,主要用于开关蓝牙,芯片上电部分(不属于驱动,可以算是硬件抽象层(HAL)),代码分布如下:/system/bluetooth/5.kernel部分,主要包括RFCOMM,L2CAP等协议以及HCI的实现,代码分布如下:/kernel/net/bluetooth/6.driver部分,该部分代码还真没了解过,代码分布:/kernel/drivers/bluetooth/另外,driver部分和具体芯片密切相关,有时在下面的目录下也会有:/vendor//device/

3. 安卓蓝牙驱动

安卓蓝牙驱动是一款通过蓝牙连接其他设备的驱动软件
有以下功能:
1、蓝牙局域网(PAN)、蓝牙高质量音频(A2DP,HFP);
2、蓝牙图像传输功能(BIP)、串 行端口功能 (SPP);
3、蓝牙打印服务(HCRP)、 蓝牙文件传输服务(FTP);
4、蓝牙信息交换服务(OPP)、 蓝牙拨号上网服务(DUN);

4. 有蓝牙的智能手机手机是否可以通过蓝牙连接连接另外一台手机当蓝牙耳机用

不可以!

这个想法很好,也有很多人提过,就是有一台带蓝牙的旧手机能当蓝牙耳机用就好了,还有人幻想把手机当蓝牙接收设备用耳机孔输出到音箱上,但这些目前是行不通的。

1 Android系统至今没有提供蓝牙的从机模式。Android手机的系统开发从最开始就没打算当一从机用,一直都设计成设备的管理者、操作者、网络的中心。当然从操作系统本身,这个东西是可以实现的,代码的角度没有问题。如果有人开发,有实现的可能。

2 iOS系统到了蓝牙4.0时代才提供了从机模式。手机虽然是双模的(2.1+4.0都可以使用),但是蓝牙耳机所使用的Profile:A2DP和HFP都是 BR/EDR Based 是基于2.0的,4.0是用于低功耗设备的,蓝牙耳机这种高带宽的东西肯定不是低功耗。所以iOS也不行。

所以目前这个想法还不能实现,好在现在蓝牙耳机并不算贵,而且手机做蓝牙耳机用也实在太过笨重。

以上主要内容引用自知乎 4.0设备开发者 盛欣哲 略有改动。

5. 关于android系统蓝牙都用什么模块,有单独的android驱动吗

Android系统的源码中蓝牙部分的分布式这样的:
1. App部分主要包括OPP和PBAP以及HFP,当然还有settings部分,代码分布如下:
(1) /packages/app/Bluetooth/src/com/android/bluetooth/opp
(2) /packages/app/Bluetooth/src/com/android/bluetooth/pbap
(3) /packages/app/Phone/src/com/android/phone/ 中和BT相关的部分,主要是HFHS打电话相关的
(4) /packages/app/Settings/src/com/android/settings/bluetooth/ 主要是蓝牙开启,搜索,配对等

2. Framework部分主要包括BluetoothAdapter,BluetoothService,BluetoothEventLoop,BluetoothA2dpService等核心类,代码分布如下:
(1)/frameworks/base/core/java/android/server/ 包含BluetoothService,BluetoothEventLoop等核心类,但是并没有向用户应用程序提供接口,属于系统的类。
(2)/frameworks/base/core/java/android/bluetooth 包含了BluetoothAdapter, BluetoothSocket, BluetoothServerSocket等一系列类,这些类是系统向应用程序提供的接口,编写蓝牙相关的应用程序时会用到这些类,检查BT是否打开,搜索设备等等。如果编写蓝牙应用程序,需要熟悉该部分类的功能。
(3) /frameworks/base/core/jni/ 中包含Bluetooth相关的文件,如 android_server_BluetoothService.cpp 该部分主要是java层和c/c++层进行通信的

3. Bluez部分,主要包括各个协议的实现,如A2dp,AVRCP,AVDTP,HID,HDP,PAN,DUN以及对BT host的实现,通过该部分向BT Controler部分发送HCI命令,代码分布服下:
/external/bluetooth/bluez

4. BluetDroid部分,主要用于开关蓝牙,芯片上电部分(不属于驱动,可以算是硬件抽象层(HAL)), 代码分布如下:
/system/bluetooth/

5. kernel部分,主要包括RFCOMM,L2CAP等协议以及HCI的实现,代码分布如下:
/kernel/net/bluetooth/

6. driver部分,该部分代码还真没了解过,代码分布:
/kernel/drivers/bluetooth/
另外,driver部分和具体芯片密切相关,有时在下面的目录下也会有:
/vendor/
/device/

6. iOS 蓝牙HFP和GATT协议可以同时建立连接吗

android4.3 nei内置了ble并为上层app提供相应的接口来使用BLE功能。BLE主要涉及的协议及术语:GenericAttribute Profile (GATT)BLE上层的协议都是基于GATT,它是一个通用的规范,通过BLE连接发送/接收属性值。bluetoothSIG定义了很多的ble协议。

7. Android 怎么实现Bluetooth HFP unit功能

1.即只支持耳机模式进行通话,不支持手机在免提(外放)接听。
2.耳机模式(HSP) 这是最常用的配置,为当前流行支持蓝牙耳机与移动电话使用。 依赖于在64千比特编码的音频/ s的CVSD的或PCM以及AT命令从GSM 07.07的一个子集,包括环的能力最小的

8. a2dp sink 在android kk和L实现的区别

bluetooth HID dev, HFP client ,a2dp sink在android平台已经支持,下面做下简单说明:

在高通平台android4.4已经实现了a2dp sink,只要打开BTA_AVK_INCLUDED这个定义就可以启用a2dp sink的功能。

不过存在一个问题:在两个手机配对成功后,如果手机a主动连接手机b,那么手机a就会作为sourc端,断开连接后,如果b去主动连接a那么b就成为source端。在5.0中 framework通过系统属性“persist.service.bt.a2dp.sink”在打开蓝牙时进行sink和source的判断,一旦确定角色就不会因为发起连接的不同而导致角色不同。

咋打开蓝牙时执行AdapterService.java::processStart->checkA2dpState(),根据系统属性把需要禁用的角色服务放到HashSet mDisabledProfiles中,然后启动需要的角色服务,然后启动其他需要启动的服务。

Bluedroid中通过BTA_AV_SINK_INCLUDED来控制a2dp sink功能的启用。

9. 如何打开android hfp协议

各种蓝牙协议的全称:

OPP:对象存储规范(Object Push Profile),最为常见的,文件的传输都是使用此协议。

HFP:(Hands-free Profile),让蓝牙设备可以控制电话,如接听、挂断、拒接、语音拨号等,拒接、语音拨号要视蓝牙耳机及电话是否支持。

HDP: HDP (Health Device Profile) 蓝牙医疗设备模式 可以创建支持蓝牙的医疗设备,使用蓝牙通信的应用程序,例如心率监视器,血液,温度计和秤。

A2DP: Advanced Audio Distribution Profile (A2DP) 高级音频传输模式 A2DP是能够采用耳机内的芯片来堆栈数据,达到声音的高清晰度。有A2DP的耳机就是蓝牙立体声耳机。

PAN:个人局域网(Personal Area Network)最新为了满足需求而出现的, 在小范围内能够将个人设备(自己的手机 电脑笔记本等)互联而组成的网络。

热点内容
cvr网络存储 发布:2025-01-24 17:24:52 浏览:415
腿套压缩袜 发布:2025-01-24 17:05:16 浏览:458
电脑如何将安卓软件卸载干净 发布:2025-01-24 17:03:06 浏览:489
hello密码怎么破解 发布:2025-01-24 17:03:06 浏览:73
pspfifa无缓存 发布:2025-01-24 16:45:13 浏览:165
androidhandler机制 发布:2025-01-24 16:41:10 浏览:936
安卓系统如何下载aov 发布:2025-01-24 16:29:53 浏览:573
iptables允许ip访问 发布:2025-01-24 16:19:58 浏览:932
安卓80如何识别存储卡权限 发布:2025-01-24 16:19:54 浏览:232
存储介质价格 发布:2025-01-24 16:19:18 浏览:151