# MDM设置网络白名单功能异常

#### 问题现象

通过addAllowedWifiList()设置Wi-Fi白名单不生效。

#### 背景知识

MDM应用可以通过addAllowedWifiList添加Wi-Fi白名单，Wi-Fi的ssid+BSSID作为参数传递，添加成功后当前设备仅允许连接该名单下的Wi-Fi。

以下情况下，调用本接口会报策略冲突：

*   已经通过setDisallowedPolicy接口禁用了设备Wi-Fi能力。通过setDisallowedPolicy解除Wi-Fi禁用后，可解除冲突。
*   已经通过addDisallowedWifiList接口添加了Wi-Fi禁用名单。通过removeDisallowedWifiList移除Wi-Fi禁用名单后，可解除冲突。

#### 问题定位

有问题的操作步骤如下：

1.  确保restrictions中启用Wi-Fi，wifiManager确保没有Disallowed和Allowed的Wi-Fi。
2.  使用addAllowedWifiList添加一个Wi-Fi白名单，其参数类似\[{"ssid":"mate60","BSSID":"92:EF:1C:F1:21:81"}\]，BSSID值在此处获取：
    
3.  设置后，Wi-Fi白名单未生效。

分析以上操作步骤，发现Wi-Fi白名单未生效的原因是**未正确传递BSSID值**。

BSSID的正确获取方法：

1.  打开“开发者选项”-->"开启wlan详细日志记录"：
    
2.  查看BSSID：
    

#### 分析结论

1.  BSSID比较隐晦，需要专门的指引，用户才能正确获取BSSID。
2.  MAC和BSSID的格式类似，容易误用，导致功能不正常。

#### 修改建议

1.  正确获取BSSID。
2.  addAllowedWifiList接口中，传递BSSID。