如何使用广播接收器收听蓝牙配对请求?

时间:2016-04-13 20:51:22

标签: android bluetooth

我想在通过蓝牙接收来自其他Android设备的配对请求时触发某些内容,我在我的活动中注册了广播接收器,但它不起作用。有谁知道怎么做?

    IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_PAIRING_REQUEST);
    Log.i("BLE Pairing Info", "111");
    this.registerReceiver(bluetoothReceiver, filter);
    bluetoothReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();

            if (BluetoothDevice.ACTION_PAIRING_REQUEST.equals(action)) {
                BluetoothDevice dev = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                Log.i("BLE Pairing Info",action);
                //dev.setPairingConfirmation(true);
            }

        }
    };

1 个答案:

答案 0 :(得分:0)

你有权利吗?

您需要蓝牙管理员权限才能在设备上配对/广播配对请求,如您所见:

检查一下:https://developer.android.com/reference/android/Manifest.permission.html#BLUETOOTH_ADMIN

没有它,我猜系统也不会向你发送配对事件。