美文网首页
获取Android BluetoothDevice的重命名名称

获取Android BluetoothDevice的重命名名称

作者: 树蜂 | 来源:发表于2019-07-26 11:26 被阅读0次

    安卓上,使用如下代码获取蓝牙设备的默认名称

    BluetoothDevice.getName();
    

    但假若我们要获取设备重命名后的名称,则需要使用反射进行获取

      /**
         * 获取重命名后的名称
         * @param device
         * @return
         */
        private String getName(BluetoothDevice device)
        {
            String deviceAlias = device.getName();
            try {
                Method method = device.getClass().getMethod("getAliasName");
                if(method != null) {
                    deviceAlias = (String)method.invoke(device);
                }
            } catch (NoSuchMethodException e) {
                e.printStackTrace();
            } catch (InvocationTargetException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
            return deviceAlias;
        }
    
        /**
         * 对设备进行重命名
         * @param device
         * @param pNewName
         */
        private void alter(BluetoothDevice device, String pNewName)
        {
            try {
                Method method = device.getClass().getMethod("setAlias", String.class);
                if(method != null) {
                    method.invoke(device, pNewName);
                }
            } catch (NoSuchMethodException e) {
                e.printStackTrace();
            } catch (InvocationTargetException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
        }
    

    获取Android BluetoothDevice的重命名名称

    相关文章

      网友评论

          本文标题:获取Android BluetoothDevice的重命名名称

          本文链接:https://www.haomeiwen.com/subject/xmjrrctx.html