Java Android Bluetooth可连接其他蓝牙设备
我正在做基于蓝牙的应用程序,我想连接其他设备,如诺基亚设备和打印机 我参考了android蓝牙文档。它展示了蓝牙API的所有基本功能,我做了所有这些事情Java Android Bluetooth可连接其他蓝牙设备,java,android,bluetooth,Java,Android,Bluetooth,我正在做基于蓝牙的应用程序,我想连接其他设备,如诺基亚设备和打印机 我参考了android蓝牙文档。它展示了蓝牙API的所有基本功能,我做了所有这些事情 Scanning for other Bluetooth devices Querying the local Bluetooth adapter for paired Bluetooth devices Establishing RFCOMM channels/sockets Connecting to a remote device Tra
Scanning for other Bluetooth devices
Querying the local Bluetooth adapter for paired Bluetooth devices
Establishing RFCOMM channels/sockets
Connecting to a remote device
Transfering data over Bluetooth
我从BluetoothChat获得参考,android的样本
BluetoothChat This application send data to another android device but for that this application must be installed in both the devices.
像这样
我想要的是
这在android中可能吗?我认为这是不可能的 事实上,当您创建蓝牙套接字时,您必须使用
createrFComSocketToServiceRecord(UUID)
此函数需要UUID,UUID是两个设备上的应用程序之间共享的字符串,因此可以建立连接
如果没有蓝牙插座在另一台设备上监听,使用完全相同的UUID,您将无法共享数据。您可以轻松实现两台BT设备之间的连接。 你只需要打个电话
createRfcommSocketToServiceRecord(UUID)
使用UUID,了解接收器设备。
对于文件传输操作,UUID必须等于(例如)00001106-0000-1000-8000-00805F9B34FB(文件传输服务)
所以,您的连接代码可能看起来像下面的代码
BluetoothDevice=mBluetoothAdapter.getRemoteDevice(“00:0A:94:16:77:A0”);
蓝牙插座
try {
log(TAG, "Remote device " + device);
ParcelUuid[] uuids = device.getUuids();
boolean isFileTransferSupported = false;
UUID ftpUID = UUID.fromString("00001106-0000-1000-8000-00805F9B34FB");
// Check if remote device supports file transfer
for (ParcelUuid parcelUuid: uuids) {
if (parcelUuid.getUuid().equals(ftpUID)) {
isFileTransferSupported = true;
break;
}
}
if (!isFileTransferSupported) {
log(TAG, "Remote bluetooth device does not supports file transfer ");
return;
}
clientSocket = device.createRfcommSocketToServiceRecord(ftpUID);
clientSocket.connect();
} catch (IOException e) {
return;
}
感谢您的回复,我想明确一点,在我的应用程序中,通过编码无法连接蓝牙设备?或者有什么解决办法?嘿,你找到解决办法了吗??