android O 蓝牙设备默认名称更改

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android O 蓝牙设备默认名称更改相关的知识,希望对你有一定的参考价值。

安卓系统会首先读取BTM_DEF_LOCAL_NAME的值,如果为空,就使用"ro.product.model"作为蓝牙设备名。

system/bt/btif/src/btif_dm.cc

#define PROPERTY_PRODUCT_MODEL "ro.product.model"
......
static char* btif_get_default_local_name() {
  if (btif_default_local_name[0] == '\0') {
    int max_len = sizeof(btif_default_local_name) - 1; 
    if (BTM_DEF_LOCAL_NAME[0] != '\0') {
      strncpy(btif_default_local_name, BTM_DEF_LOCAL_NAME, max_len);
    } else {
      char prop_model[PROPERTY_VALUE_MAX];
      osi_property_get(PROPERTY_PRODUCT_MODEL, prop_model, ""); 
      strncpy(btif_default_local_name, prop_model, max_len);
    }    
    btif_default_local_name[max_len] = '\0';
  }
  return btif_default_local_name;
}

device/qcom/common/bdroid_buildcfg.h

#define BTM_DEF_LOCAL_NAME   "QCOM-BTD"

Tony Liu

2018-4-10

以上是关于android O 蓝牙设备默认名称更改的主要内容,如果未能解决你的问题,请参考以下文章

更改树莓派蓝牙设备名称?

ubuntu修改蓝牙设备名称

如何获取蓝牙配对设备的设备名称?

Android 蓝牙 LE - 读取浮动特性

清除android中的蓝牙名称缓存

Windows 10连接到蓝牙经典设备而不进行配对