BLE 配网
timeout 在 Android 和 iOS 上都以秒为单位,60 秒传 60。
AI 模组特别说明:当模组是 AI 模组,且由模组自行与云端建立绑定关系时,SDK 配网必须设置 bindWithUid = true。 配网前先完成用户登录,或设置有效的 uid 和 token。该模式使用当前用户的绑定设备列表确认配网结果;普通配网场景传 false。此开关不能代替登录,也不等同于 App 主动调用设备 bind()。
在 1.7.11-beta 中,device.bleCapability.provideWiFiCredentials 不会传递 bindWithUid。需要开启该参数时,使用下面的 RNGizDeviceManagerModule 调用方式。
import { RNGizDeviceManagerModule } from 'react-native-gizwits-sdk-v5';
import type { Types } from 'react-native-gizwits-sdk-v5';
const progressHandler: Types.GizProvideWiFiCredentialsCallback = event => {
// Android 为字符串,iOS 为数字;完整对应关系见配网事件列表
if (event.data === 'WIFI_CONFIG_SUCCESS' || event.data === 1013) {
console.log('Provisioning succeeded');
}
};
const bindWithUid = true; // AI 模组自行与云端建立绑定关系
if (!device.bleCapability.profile.configured && device.bleCapability.netStatus >= 1) {
const result = await RNGizDeviceManagerModule.provideWiFiCredentials(
device.id, 'BLE', ssid, password, 60, progressHandler, bindWithUid,
);
if (!result.success) console.log(result.error, result.message);
}停止配网
await device.bleCapability.stopProvideWiFiCredentials();