简体中文
简体中文
English
联系我们
注册
登录
layout空间导航

扫设备二维码配网

更新时间:2022-02-17 06:15:24下载pdf

该功能只适用于已连接互联网的设备。

扫设备二维码配网

获取设备uuid

扫描设备二维码获取 url, 然后通过通用接口获取 uuid

接口说明

不带 session 的接口请求

<T> void requestWithApiNameWithoutSession(String apiName, String version, Map<String, Object> postData, Class<T> object, final ITuyaDataCallback<T> callback);

参数说明

参数 说明
apiName api 名
version api 版本号
postData post 发送的数据
object 服务端返回的数据对象
callback 回调

示例代码

Map<String, Object> postData = new HashMap<>();
//二维码扫码得到的URL
postData.put("code", url);

TuyaOSDevice.getRequestInstance().requestWithApiNameWithoutSession("tuya.m.qrcode.parse", "4.0", postData, String.class, new ITuyaDataCallback<String>() {
	@Override
	public void onSuccess(String result) {
	  //从result中得到uuid
	  Log.i("TAG" , result);
	}

	@Override
	public void onError(String errorCode, String errorMessage) {
		Log.i("TAG" , errorCode);
	}
});

初始化配网参数

示例代码

TuyaQRCodeActivatorBuilder builder = new TuyaQRCodeActivatorBuilder()
		.setUuid(uuid)
		.setHomeId(homeId)
		.setContext(mActivity)
		.setTimeOut(timeout)
		.setListener(new ITuyaSmartActivatorListener() {

				@Override
				public void onError(String errorCode, String errorMsg) {

				}

				@Override
				public void onActiveSuccess(DeviceBean devResp) {

				}

				@Override
				public void onStep(String step, Object data) {

				}
			}
		));

参数说明

参数 说明
uuid 设备 UUID ,可通过扫设备二维码获取
homeId 家庭 ID,详情参考家庭管理章节
timeout 配网的超时时间设置,默认是100s ,单位: 秒

配网方法调用

ITuyaActivator mTuyaActivator = TuyaOSActivator.deviceActivator().newQRCodeDevActivator(builder);
//开始配网
mTuyaActivator.start();
//停止配网
mTuyaActivator.stop();
//销毁
mTuyaActivator.onDestory();