android - 是否可以过滤蓝牙扫描结果以显示具有特定名称的设备

标签 android

我的应用扫描蓝牙设备,我只希望它显示具有特定名称的设备(限制用户查看的结果)。不完全确定这是否可以实现?请看下面的截图

当前蓝牙扫描结果: enter image description here

期望的结果: enter image description here

最佳答案

是的,你可以过滤掉它。

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
  public void onReceive(Context context, Intent intent) {
    String action = intent.getAction();
    if (BluetoothDevice.ACTION_FOUND.equals(action)) {
      // Discovery has found a device. Get the BluetoothDevice
      // object and its info from the Intent.
      BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
      String deviceName = device.getName();
      // 
      // use try-catch to keep tying on the logic -- John Melody added
      try {
        if (deviceName.contains("somethingsomething")) {
          System.out.println(String.format("Ok %s", deviceName));
        }
      } catch(Exception e) {
        e.printStackTrace();
      }
    //
    }
  }
};

结帐[此][1] 链接

[1]:https://developer.android.com/guide/topics/connectivity/bluetooth#FindingDevices

关于android - 是否可以过滤蓝牙扫描结果以显示具有特定名称的设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51515192/

相关文章:

android - Windows PC 作为 USB 主机通过 USB 与 Android 设备通信

android - 在 Android 上实现 youtube 书签应用

android - 亚行没有启动

android - 由于特定方法,对话框出现缓慢,我如何在这里使用线程?

android - 单元测试我无法将 Observer 添加到 LiveData NullPointerException

java - java.lang.String 类型的 Value Next 无法转换为 JSONArray

java - 如何将包含指针的 OpenCV-C++ 代码转换为 JAVA?

android - Android中如何判断哪个Activity启动了当前的Activity?

java - Android:应用程序在模拟器上运行,但在我的手机上崩溃

java - 在网格布局中设置行和列的大小