有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Android java:broadcastReceiver上的蓝牙连接事件未触发

我必须处理BluetoothAdapter连接到新设备时触发的事件。我试过这个:

private final BroadcastReceiver bluetoothConnectionStateListener = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1);
        switch (state) {
            case BluetoothAdapter.STATE_CONNECTED:
                Log.i("BLE info", "Bluetooth connected");
                connectedDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                setConnectedLayout();
                break;
            case BluetoothAdapter.STATE_DISCONNECTED:
                Log.i("BLE info", "Bluetooth disconnected");
                break;
        }
    }
};

注册事宜:

registerReceiver(bluetoothConnectionStateListener, new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));

但从未调用onReceive()方法。 (注意:连接发生在分离的螺纹中)

怎么了? 谢谢


共 (0) 个答案