BLE Config
BLE Config
import {
GizProvideWiFiCredentialsCallback,
} from 'react-native-gizwits-sdk-v5/lib/types';
const [state, setState] = useState(['配置中']);
const progressHandler: GizProvideWiFiCredentialsCallback = useCallback(
event => {
switch (event.data) {
case 'WIFI_CONFIG_RECV_SUCCESS': {
state.push('设备收到配置包');
break;
}
case 'START_SEND_WIFI_CONFIG_SUCCESS': {
state.push('发送配置包成功');
break;
}
case 'WIFI_CONFIG_SUCCESS': {
state.push('配网成功');
break;
}
case 'CONNECT_DEVICE_SUCCESS': {
state.push('连接设备成功');
break;
}
}
setState([...state]);
},
[state, setState],
);
/**
* configured 代表设备是否已经配网,如果为false,代表其可以配网
* netStatus >= 1 代表在线 (netStatus的具体定义,请查阅类型)
* 目前只有蓝牙配网支持这个字段
*/
if (!device.bleCapability.profile.configured && device.bleCapability.netStatus >= 1) {
// 其中device对象可以在设备列表推送中找到
const data = await device.bleCapability.provideWiFiCredentials(
ssid,
password,
60 * 1000, // 超时时间
progressHandler,
)
}