我正在做蓝牙发现(不是蓝牙LE)希望找到我的机器人服装,但它永远找不到。发现的代码我很确定它没问题,因为我可以找到其他设备(电视的蓝牙,索尼智能手机等),但从来没有我的索尼智能手表3。
知道这是否可行?
以下是代码:
final IntentFilter filter = new IntentFilter();
filter.addAction(BluetoothDevice.ACTION_FOUND);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
context.registerReceiver(mBroadcastReceiver, filter);
final BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
bluetoothAdapter.startDiscovery();
...
private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (BluetoothDevice.ACTION_FOUND.equals(action)) {
short rssi = intent.getShortExtra(BluetoothDevice.EXTRA_RSSI, Short.MIN_VALUE);
BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
if (!mDeviceList.contains(device)) {
mDeviceList.add(device);
}
} else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {
// we're done here
context.unregisterReceiver(mBroadcastReceiver);
final BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
bluetoothAdapter.cancelDiscovery();
if (mOnBluetoothDiscoveryFinished != null) {
mOnBluetoothDiscoveryFinished.onDiscoveryFinished(mDeviceList);
}
}
}
};
干杯/