更新时间:2024-07-05 08:07:42下载pdf
设备备用网络能力包括:
获取设备备用网络管理类
val manager = DeviceBusinessDataManager.getInstance().getDeviceNetSetManager(deviceId)
查看设备是否支持备用网络
val isSupport = manager?.isSupportBackupNetwork()
只有当设备支持备用网络,方可根据下文的步骤来实现备用网络业务。
获取设备当前连接的 Wi-Fi 信息。
manager?.getDeviceCurrentNetInfo(object : IThingDataCallback<CurrentWifiInfoBean?> {
override fun onSuccess(result: CurrentWifiInfoBean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
获取设备当前备用的 Wi-Fi 网络列表。
manager?.getDeviceBackupWiFiList(object : IThingDataCallback<BackupWifiListInfo?> {
override fun onSuccess(result: BackupWifiListInfo?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
只要设备支持变更备用网络,才能通过 变更设备备用网络列表 的接口来实现变更备用网络的业务。另外,需要注意的是:当设备的备用网络数量达到最大值时,无法再添加新的备用网络。可以根据步骤 1 返回的 maxNum
来判断。
manager?.canUpdateDeviceBackupWiFiList(bean)
如果是新增一个备用 Wi-Fi 网络,需要将 Wi-Fi 网络的 SSID、密码以及 Hash 值组装成 BackupWifiBean
,再通过 updateDeviceBackupWiFiList
接口增加备用 Wi-Fi 网络。
// 组装数据
val backupWifiBean = BackupWifiBean()
backupWifiBean.ssid = ssid
backupWifiBean.passwd = pwd
backupWifiBean.hash =
SHA256Utils.getBase64Hash(viewModel.deviceBean?.getLocalKey() + ssid + pwd)
backupWifiBeans.add(backupWifiBean)
// 变更列表
manager?.updateDeviceBackupWiFiList(backupWifiList,
object : IThingDataCallback<BackupWifiResultBean?> {
override fun onSuccess(result: BackupWifiResultBean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
只要设备支持主动切换网络,才能通过 切换设备网络 的接口来实现备用网络切换的业务。
canSwitchDeviceWiFi.value = manager?.canSwitchDeviceWiFi(bean)
设备可以切换到一个新的 Wi-Fi 网络上,或者切换到备用网络列表中某一个 Wi-Fi 网络。
manager?.switchToNewWifi(ssid, pwd, object : IThingDataCallback<SwitchWifiResultBean?> {
override fun onSuccess(result: SwitchWifiResultBean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
manager?.switchToBackupWifi(hash, object : IThingDataCallback<SwitchWifiResultBean?> {
override fun onSuccess(result: SwitchWifiResultBean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
上述的步骤是按照查增的思路完成设备备用网络业务。实际业务开发时,可灵活组合。更多信息,可以参考 业务拓展 SDK Demo 中的 备用网络模块。
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈