网站大量收购闲置独家精品文档,联系QQ:2885784924

Android蓝牙协议指南.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android蓝牙协议指南

Android 蓝牙协议栈 Android 蓝牙协议栈使用的是BlueZ,支持GAP, SDP, and RFCOMM 规范,是一个SIG 认证的蓝牙协议栈。 Bluez 是GPL 许可的,因此Android 的框架内与用户空间的bluez 代码通过D-BUS 进程通讯进行交互,以避免专有代码。 Headset 和Handsfree(v1.5)规范就在Android 框架中实现的,它是跟Phone App 紧密耦合的。这些规范也是SIG 认证 的。 下面的图表提供了一个以库为导向的蓝牙栈视图。 实线框的是Android 模块,红色虚线部分为合作伙伴指定模块(译者注:芯片商提供)。 下面的图表是以进程为导向视图: 移植 BlueZ 是兼容蓝牙2.1 的,可以工作在任何2.1 芯片以及向后兼容的旧的蓝牙版本。有要有两个方面:  串口驱动 UART driver  蓝牙电源开/关 Bluetooth Power On/Off 串口驱动 BlueZ 核心子系统使用hciattach 守护进程添加你的指定硬件串口驱动。 例如,MSM7201A,这个文件是在drivers/serial/msm_serial.c。你还需要通过修改init.rc 为hciattach 来编辑命令 行选项。 蓝牙电源开/关 蓝牙芯片的电源开关方法1.0 和Post 1.0 是不同的,具体如下:  1.0:Android 框架写0 或1 到/sys/modules/board_[PLATFORM]/parameters/bluetooth_power_on  Post 1.0:Android 框架使用linux rfkill API,参考 arch/arm/mach-msm/board-trout-rfkill.c 例子。 编译 编译Android 打开蓝牙支持,添加下面这行内容到BoardConfig.mk。 BOARD_HAVE_BLUETOOTH :=true 解决问题 调试 调试你的蓝牙实现,可以通过读跟蓝牙相关的logs(adb logcat)和查找ERROR 和警告消息。Android 使用Bluez,同时 会带来一些有用的调式工具。下面的片段为了提供一个建议的例子: hciconfig -a # print BT chipset address and features. Useful to check if you can communicate with your BT chipset. hcidump -XVt # print live HCI UART traffic. hcitool scan # scan for local devices. Useful to check if RX/TX works. l2ping ADDRESS # ping another BT device. Useful to check if RX/TX works. sdptool records ADDRESS # request the SDP records of another BT device. 守护进程日志 hcid(STDOUT)和hciattach(STDERR)的守护进程日志缺省是被写到/dev/null。编辑init.rc 和init.PLATFORM.rc 在 logwrapper 下运行这些守护进程,把它们输出到logcat。 hciconfig -a 和 hcitool 如果你编译你自己的system.img,除了hcitool 扫描不行,hciconfig -a 是可以工作的,尝试安装固件到蓝牙芯片。 XXX TBD 工具 BlueZ 为调试和与蓝牙子系统通信提供很多设置命令行工具,包含下面这些: hciconfig hcitool hcidump sdptool dbus-send dbus-monitor 特性支持 这一部分提供在每个android 版本中的蓝牙的一些变化,主要是一些性能参数上的东西,就不翻译了。 Android 1.0 release Platform features  Based on Bluez 3.36 and Linux Kernel 2.6.25  Bluetooth 2.0+EDR host stack  Headset Profile 1.0 in Audio Gateway role  Handsfree Profile 1.5 in Audio Gate

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档