使用Android连接蓝牙

使用Android连接蓝牙,android,bluetooth,Android,Bluetooth,我正在开发一个Android应用程序,其目的是连接到一个蓝牙设备,该设备正在等待输入,并且已经与我的手机配对 我已经将设备的MAC地址放入一个字符串中,并且我设法将MAC地址发送到一个新的活动,在那里我将进行连接。问题是我不明白如何 我一直在尝试使用它,到目前为止,它的工作,但当谈到连接部分,我只是无法理解它了 它说的是UUID,但它没有告诉我在哪里可以找到它,经过一些研究和测试,我发现它不可能是字符串,在我在网上发现的一个例子中,有人正在将字符串或INt解析为UUID,而这些数字看起来一点也不

我正在开发一个Android应用程序,其目的是连接到一个蓝牙设备,该设备正在等待输入,并且已经与我的手机配对

我已经将设备的MAC地址放入一个字符串中,并且我设法将MAC地址发送到一个新的活动,在那里我将进行连接。问题是我不明白如何

我一直在尝试使用它,到目前为止,它的工作,但当谈到连接部分,我只是无法理解它了

它说的是UUID,但它没有告诉我在哪里可以找到它,经过一些研究和测试,我发现它不可能是字符串,在我在网上发现的一个例子中,有人正在将字符串或INt解析为UUID,而这些数字看起来一点也不像MAC地址

这就是我到目前为止所做的,我认为应该在这里进行连接

try {
            tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
我找不到UUID,也不知道如何将我的Mac地址分配给它

如果都错了,有没有人有一个清晰完整的代码示例来解释如何连接到设备,以及我应该如何处理MAC地址?我似乎找不到任何清晰的和在网上工作的东西


提前感谢

这不是对你问题的直接回答,但我为电子LED显示屏设计了一个控制器,然后基于SDK中的蓝牙聊天示例编写了一个android应用程序,以便用我的手机向标志发送消息

检查这里:对于这个项目,您可以看到一些关于android部分如何工作的屏幕截图和代码示例


希望它能告诉你如何将你的手机连接到你正在连接的任何东西上。您不需要MAC地址,只需扫描并配对即可。

您可以在开源BluetoothViewer应用程序中找到完整的工作示例:

具体而言,连接蓝牙设备的代码如下:

UUID是您自己生成的,并在应用程序中将其保存为常量。我不太确定这有什么意义,但这就是它的工作原理。您可以使用
uuidgen
命令行工具生成UUID,只需不带参数运行即可。在Mac OS X中,
uuidgen
默认应安装,在Debian(可能还有Ubuntu)中,它位于
uuid运行时
包中


我创建这个Android应用程序正是为了这个目的:调试与任何你想连接的蓝牙设备的连接,观察并理解它的协议。我希望这会对您有所帮助。

我实际上使用的是Arduino板,我的目标是通过蓝牙向其发送1和2,以打开和关闭led;)。我会查的谢谢!在这种情况下,还可以看看arduino代码。忽略电路板示意图,因为该版本未通过串行通信检查(电路板设计问题)。发布的代码在我的arduino uno开发板上运行。我正在一个新的回购协议中从头开始重做页面上的所有内容,但是android和arduino代码与wiki页面的结合应该告诉你你需要知道的。实际上,我已经在arduino端进行了编程,因为我一直在听(在LCD屏幕上显示)我的笔记本电脑使用putty^^发送的数据。我想用你的代码和janos的我会设法抓住这个!我很快就回来此应用程序的唯一UUID专用静态最终UUID MY_UUID=UUID.fromString(“fa87c0d0-afac-11de-8a39-0800200c9a66”);哦,这意味着UUID实际上是针对正在运行的应用程序的,而您输入的字符串只是随机的,对于在同一网络中同时运行的应用程序来说应该是不同的,很有趣……这段代码似乎注释得很好!我明天再看一遍,看能不能把事情办好!谢谢@马格纳斯是的,就像那样。使用
uuidgen
工具生成您自己的UUID。该工具默认安装在Mac OS X上,在Debian(可能还有Ubuntu)中,它位于
uuid运行时
包中。将于下周开始使用。自从我通过考试以来,这个项目一直被搁置好多年了!我设法让它工作,并用我的笔记本电脑控制我的LED灯,我最终使用了第一个答案让它工作,我相信(因为我添加了它作为接受的答案,不得不承认已经有一段时间了:)