【问题标题】:How to rename Android bluetooth paired device by programmly?如何通过programmly重命名Android蓝牙配对设备?
【发布时间】:2014-10-24 03:32:37
【问题描述】:

我需要通过编程“重命名”Android 手机的蓝牙配对设备。但搜索结果大多是关于本地蓝牙重命名方法的讨论。它可以使用 setname() 来完成。有没有什么方法可以重命名安卓手机的“配对设备”?

【问题讨论】:

    标签: android bluetooth


    【解决方案1】:

    我知道这个问题很老了,但我只是需要这个并找到了解决方法。它使用反射,所以我不确定这是最好的方法,但它有效。

    public void renamePairDevice(BluetoothDevice device, String name) 
            throws IllegalAccessException, InvocationTargetException, NoSuchMethodException
    {
        Method m = device.getClass().getMethod("setAlias", String.class);
        m.invoke(device, name);
    }
    

    【讨论】:

      【解决方案2】:

      我认为您不能重命名配对设备的名称。您只能从配对设备的设置中更改名称。

      把它想象成一个wifi路由器,你不能改变路由器的名字,但你只能连接它。

      如果你愿意,你可以这样分配

      Set<BluetoothDevice> devices = btAdapter.getBondedDevices();
          if (devices.size() > 0) {
               for(int i=0;i<device.size();i++) {
                  mDevice[i] = device;
                  bondedDevices.add(mDevice.getName());
      
      
              }
          }
      

      这样您就可以将配对设备的名称作为 mDevice 数组获取。希望它能解决你的问题

      【讨论】:

      • “取消配对”与“重命名”处于同一级别。它使用 "BluetoothDevice.getClass().getMethod("removeBond", (Class[]) null)" 来调用 unpair 方法。我认为可能是“重命名”具有相同的隐藏方法来重命名。
      • 您似乎没有明白问题的全部内容。它要求重命名配对设备,更改后的名称将用于与设备的进一步通信。我正在寻找相同的解决方案。
      猜你喜欢
      • 1970-01-01
      • 2019-07-12
      • 2012-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      相关资源
      最近更新 更多