首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否可以仅显示配对的、打开的和范围内的蓝牙设备的活动列表,而不是显示所有以前配对的设备?

是否可以仅显示配对的、打开的和范围内的蓝牙设备的活动列表,而不是显示所有以前配对的设备?
EN

Stack Overflow用户
提问于 2016-08-06 00:38:28
回答 1查看 147关注 0票数 1

我目前正在开发一个android应用程序,它连接到具有蓝牙SPP功能的arduino微处理器。我的应用程序显示所有以前配对的蓝牙设备,但我想知道是否可以只显示当前打开的配对设备?我到处寻找答案,但还没有找到,希望这是可能的。

EN

回答 1

Stack Overflow用户

发布于 2016-08-06 01:27:04

您需要创建一个BluetoothAdapter,并注册一个BroadcastReceiverBluetoothDevice.ACTION_FOUND.中,将那些找到的设备存储在某种列表中。

代码语言:javascript
运行
复制
BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(BluetoothDevice.ACTION_FOUND);
registerReceiver(receiver, intentFilter);
bluetoothAdapter.startDiscovery();

...
private ArrayList<BluetoothDevice> devices = new ArrayList<>();
private final BroadcastReceiver receiver = new BroadcastReceiver(){
    public void onReceive(Context context, Intent intent){
        String action = intent.getAction();
        if(action.equals(BluetoothAdapter.ACTION_FOUND)){
            BluetoothDevice bluetoothDevice = (BluetoothDevice) intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
            devices.add(bluetoothDevice);
        }
    }
};

您还可以将接收器注册到BluetoothDevice.ACTION_DISCOVERY_STARTEDBluetoothDevice.ACTION_DISCOVERY_FINISHED,并相应地处理它们。

注意:不要忘记在清单中注册广播接收器,并包括必要的权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38794057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档