android bluetooth 阻塞,Android BluetoothSocket.isConnected始终返回false

我正在尝试检测蓝牙设备当前是否使用API​​ 14或更高版本连接到

Android设备.看起来我应该可以使用BluetoothSocket.isConnected()方法,但无论我做了什么,到目前为止我只是因为任何事情而得到假回复,无论是否连接.

AndroidManifest包含以下行:

以及有问题的代码:

protected void onCreate(final Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

Set pairedDevices = mBluetoothAdapter.getBondedDevices();

for (BluetoothDevice device : pairedDevices) {

Log.i(Constants.LOG_TAG, String.format(Locale.US, "Device: %s connected: %b", device.getName(), isConnected(device))); //$NON-NLS-1$z

}

}

private boolean isConnected(BluetoothDevice device) {

BluetoothSocket socket = null;

// Get a BluetoothSocket for a connection with the given BluetoothDevice

UUID SPP_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");

try {

socket = device.createRfcommSocketToServiceRecord(SPP_UUID);

} catch (IOException e) {

Log.e(Constants.LOG_TAG, e.getMessage()); //$NON-NLS-1$z

return false;

}

Log.i(Constants.LOG_TAG, socket.toString()); //$NON-NLS-1$z

return socket.isConnected();

}

不会抛出任何错误,它只会在100%的时间内返回“false”.有什么东西我做得不对吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值