0

如果用户单击是,我想得到响应,他想让他的手机被发现。当答案是肯定时,我想开始新的活动,但是当用户打开设置蓝牙时,我的应用程序正在打开新活动(这是一个错误)

这就是我所做的:

    private final BroadcastReceiver mBroadcastReceiver2 = new BroadcastReceiver() {

        @Override
        public void onReceive(Context context, Intent intent) {
            final String action = intent.getAction();

            if (action.equals(BluetoothAdapter.ACTION_SCAN_MODE_CHANGED)) {

                int mode = intent.getIntExtra(BluetoothAdapter.EXTRA_SCAN_MODE, BluetoothAdapter.ERROR);

                switch (mode) {
                    case BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE:
                        Intent serverIntent = new Intent(MainActivity.this, DeviceListActivity.class);
//                        startActivityForResult(serverIntent, REQUEST_CONNECT_DEVICE);
//                        showProgressbar();
                        break;
                    case BluetoothAdapter.SCAN_MODE_CONNECTABLE:
                        break;
                    case BluetoothAdapter.SCAN_MODE_NONE:
                        break;
                }
            }
        }
    };


 IntentFilter filter2 = new IntentFilter();
    filter2.addAction(BluetoothAdapter.ACTION_DISCOVERY_STARTED);
    filter2.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
    filter2.addAction(BluetoothAdapter.ACTION_SCAN_MODE_CHANGED);
    registerReceiver(mBroadcastReceiver2, filter2);
4

0 回答 0