找回密码
 注册
搜索
查看: 798|回复: 0

[蓝牙资料] 浅析基于Android的蓝牙通信功能开发

[复制链接]
发表于 2011-11-25 11:57:57 | 显示全部楼层 |阅读模式
  Bluetooth是几乎现在每部手机标准配备的功能,多用于耳机 mic 等设备与手机的连接,除此之外,还可以多部手机之间建立 bluetooth 通信,本文就通过 SDK 中带的一个聊天室的例程,来介绍一下 Android 上的 Bluetooth 的开发。

  在 Android1.x 的时候,相关 API 非常不完善,还不能简单的使用 Bluetooth 开发,有一个开源项目可以帮助程序员使用、开发蓝牙,支持直接方法bluetooth 协议栈。在 Android2 以后,框架提供了一些官方 API 来进行蓝牙的通信,但目前的程序也比较不完善。本文主要讨论 Android2 后的Bluetooth 通信的 API 使用方法。

  首先看聊天室的效果图:

  2. Bluetooth 通信 API 介绍2.1. Bluetooth 通信过程

  2.2. Bluetooth API 的主要方法

  BluetoothAdapter 类

  BluetoothAdapter.getDefaultAdapter() :得到本地默认的 BluetoothAdapter ,若返回为 null 则表示本地不支持蓝牙;

  isDiscovering() :返回设备是否正在发现周围蓝牙设备;

  cancelDiscovery() :取消正在发现远程蓝牙设备的过程;

  startDiscovery() :开始发现过程;

  getScanMode() :得到本地蓝牙设备的 Scan Mode ;

  getBondedDevices() :得到已配对的设备;

  isEnabled() :蓝牙功能是否启用。

  当发现蓝牙功能未启用时,如下调用设置启用蓝牙:

  if (! mBluetoothAdapter .isEnabled()) {

  Intent enableIntent = new Intent(BluetoothAdapter. ACTION_REQUEST_ENABLE );

  startActivityForResult(enableIntent, REQUEST_ENABLE_BT );

  }

  复制代码

  如果发现当前设备没有打开对外可见模式,则传递 Intent 来调用打开可发现模式,代码如下:

  Intent discoverableIntent = new Intent(BluetoothAdapter. ACTION_REQUEST_DISCOVERABLE ); discoverableIntent.putExtra(BluetoothAdapter. EXTRA_DISCOVERABLE_DURATION , 300);

  startActivity(discoverableIntent);

  本文来自: 赛微电子网-电子工程师社区 原文地址:http://www.srvee.com/comm/apply/qxjyAndroiddlytxgnkf_63489.html
    3G通讯技术的发展和应用:http://www.srvee.com/comm/apply/3Gtxjsdfzhyy_59193.html
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-28 14:32 , Processed in 0.045590 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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