我必须编写一个应用程序,该应用程序具有允许应用程序内蓝牙配对的先决条件。
在谷歌上搜索,我发现有一种方法可以通过编程将BluetoothDevice与API级别配对
Method createBondMethod = BluetoothDevice.class.getMethod("createBond");
Boolean paired = (Boolean) createBondMethod.invoke(device);
if (paired.booleanValue()) {
Log.i(LOGTAG, "Pairing bluetooth device succeded.");
} else {
Log.i(LOGTAG, "Pairing bluetooth device failed.");
}
这是一个非常糟糕的解决方案,对私人方法的反思从来都不是一个好的解决方案...但它似乎是唯一可用的。
我试过了...我设法将我的平板电脑与另一个蓝牙设备配对(它既不是智能手机也不是平板电脑...)。
配对两个设备后,我需要创建一个BluetoothSocket并将其连接起来。
问题来了:
BluetoothSocket socket = null;
try {
final UUID uuid = this.mDevice.getUuids()[0].getUuid();
socket = this.mDevice.createRfcommSocketToServiceRecord(uuid);
socket.connect();
Log.e(LOGTAG, "Connected to the socket");
this.onBluetoothDeviceConnected(socket, this.mDevice);
return;
} catch (Exception e) {
// handling exception
}
我的this. mDevice
是配对的设备,它不是null...但是它没有UUID,事实上方法BluetoothDevice.getUuid()
返回一个空值。
你有没有遇到过同样的问题?对于这个注释问题,你有什么有效的解决方案吗?
谢谢大家!
我现在也有同样的问题。当获取UUID时,getUuid()返回null。与我的设备制造商交谈时,他们告诉我,我的设备不支持UUID。我目前正在尝试解决这个问题。如果我成功了,我会告诉你
嗨,我要开发一个应用程序,所以我有一个设备(服务器)与3个客户端。我做了所有的验证,打开蓝牙,找到设备,所有的工作都很好。但当我要连接一个设备时,我不知道会发生什么。 我正在使用下一个代码,当我单击一个我想连接它的设备时。我只有我的应用程序在母设备中。 这里我有一个问题,如果它没有配对会发生什么?如果我尝试连接,它会自动配对吗? 我的UUID是:“00001101-0000-1000-8000-0
我在连接时遇到问题。起初它有效,而不是不起作用,除非我取消配对设备。我已经得到了所有可能发生的异常,套接字关闭,管道关闭,连接被拒绝,端口已经在使用中,等等。 我知道android 4.2之前版本的蓝牙存在问题(https://code.google.com/p/android/issues/detail?id=37725). 我在连接这些设备时遇到问题的设备: Htc one(Android4.
如何在jsplumb中重新创建/重画具有两个不同映像endpoint的连接? 例如: 这适用于一个图像(源元素和目标元素上的图像相同) 这可以工作并连接具有不同endpoint(不属于相同范围)的两个元素 所以得出的结论是,像这样的东西会起作用,但它不会。。 是否有办法访问源和目标的图像终结点(参数)url?也许是这样的:connectionname.endpoints[0]。endpoint.t
我实际上是在编程一些东西,不让用户访问Android原生wifi连接页面,所以我在我的Android应用程序中编程。它扫描可用的无线网络,将其显示在列表视图中,然后单击要连接的网络。 事实上,除了我的连接功能之外,一切都很好,这使得我的应用程序崩溃,所以如果你有任何想法...下面是代码(这是用户输入网络通行证后调用的函数)和堆栈跟踪: 堆栈跟踪:
我一直在努力让键盘或遥控器等蓝牙设备连接到Android设备。更具体地说,当这个程序第一次运行时,它会扫描蓝牙设备,并尝试与找到的设备配对和连接。我尝试了所有可能的方法来实现这一点,但我只能配对设备,而不能完全连接。我已经在Android Bluetooth guide和其他许多手册中尝试了这些例子。一个一致性是javi。BluetoothSocket调用connect时发生io错误。 我尝试了不
我正在尝试实现PowerShell远程处理(用于在远程服务器上执行PowerShell脚本)。我的远程服务器运行的是Windows server 2008和PowerShell v2。 在提升权限的PS控制台中,我执行了以下cmdlet: 返回控制台: WinRM已设置为在此计算机上接收请求。 WinRM已设置为在此计算机上进行远程管理。 从客户端计算机上提升的PowerShell会话中,我执行了