问题一:在Android蓝牙编程中,有时可以连接,有时不可以连接。不可以连接的原因是:在执行socket.connect()时,总抛出IOException:Unable to start service discovery.
刚开始我就直接百度找解决方案,可是都没有相关的解决方案,原以为是不稳定,并不是自己程序有问题。最后,还是看了看Android SDK API,才发现问题在哪,在BluetoothSocket的对象执行connect()之前,必须保证结束发现设备,即保证BluetoothAdapter的对象已经执行cancelDiscovery()
问题二:可是在执行下面代码BluetoothRev类时,怎样才能执行到符合条件BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)的代码
因为刚开始接触到蓝牙,所以直接从网上找的代码。代码中只有
bluetoothDevices.removeAll(bluetoothDevices);
bluetoothRev=new BluetoothRev();
IntentFilter discoveryFilter