Android系统。连接蓝牙设备

时间:2011-07-26 14:16:41

标签: android bluetooth

我正在尝试编写一个涉及通过蓝牙连接两个Android设备的应用程序。

据我了解,一台设备充当服务器,侦听传入连接而另一台充当客户端,并使用服务器的MAC地址初始化连接。

请考虑以下事项:

我的口袋里有我的Android手机,我开始在我的Android平板电脑上工作。我想将平板电脑连接到手机(通过蓝牙),而无需将手机从口袋中取出(我不想拔出手机并手动开始收听传入的连接)。

实现这一目标的好方法是什么?看起来我必须把手机变成服务器,不断地全天候收听连接。然而,我的直觉说这将剧烈地耗尽电池。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

你是对的,你可以把你的手机(或你的平板电脑)变成服务器。但它不应该使用那么多电池;一旦设置了服务器套接字并启动accept连接,代码就会简单地阻塞并等待传入​​连接。根据我的经验,我没有发现这是一个太多的电池消耗(但我没有硬数据来支持它)。

如果服务器涉及UI,您需要将服务器套接字拆分为单独的线程,以免阻止UI事件。

答案 1 :(得分:1)

通常,手机会以这种方式运行 - 即等待来自配对设备的传入连接。与尝试在轮询模式下查找或连接设备相比,等待/扫描传入连接的耗电量更少。许多蓝牙芯片具有低功率扫描,实现了高效扫描。