Chinaunix首页 | 论坛 | 博客
  • 博客访问: 20060
  • 博文数量: 13
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-03 13:44
文章存档

2012年(13)

我的朋友

分类:

2012-06-03 20:44:56

原文地址:Android蓝牙的启动 作者:_mystic

Android中蓝牙是通过system/bluetooth/bluedroid/bluetooth.c启动的。在这个文件中主要的函数完成的功能为:
<1> 检查蓝牙电源状态,和打开蓝牙电源
<2> 启动蓝牙,其中调用了1
<3> 关闭蓝牙

电源的状态是通过rfkill文件状态来标示的。在我们的平台没有rfkill。 在文件中直接屏蔽掉和蓝牙电源相关的函数。 主要的函数就剩下 bt_enable 和 bt_disable了。 

在bt_enable中,首先使用property_set函数开启hciattach服务。然后HCIDEVUP,最后执行property_set函数开启hcid服务。

hciattach在init.rc中是没有的,手动添加 

service hciattach /system/bin/hciattach -n /dev/ttyS1 any 38400 flow
     user root
     disabled
     oneshot

注意: -n 这个选项很重要必须添加。否则,hciattach服务是不能启动的。

现在通过UI界面就可以启动蓝牙了
阅读(427) | 评论(0) | 转发(0) |
0

上一篇:c语言笔试小结

下一篇:没有了

给主人留下些什么吧!~~