设备配网和通用配网 UI 业务包(内附代码段)
设备配网UI业务包
智能生活设备配网 UI 业务包的功能涵盖了目前常见的 Wi-Fi 设备、Zigbee 设备、蓝牙设备,并且支持二维码扫码的设备,例如 GPRS 和 NB-IoT 设备。业务包主要实现不同类型的设备配网前置操作引导,和具体入网激活。
设备类型
Wi-Fi 设备配网
支持 Wi-Fi 智能设备入网连接云服务,Wi-Fi 设备配网主要有快连模式和热点模式两种,其中智能摄像机(IPC)设备支持扫二维码方式配网。
名词 | 说明 |
---|---|
Wi-Fi 快连配网 |
又称快连模式。大致流程如下:
|
Wi-Fi 热点配网 | 又称热点模式,手机作为 STA(STAtion)连接智能设备的热点,双方建立一个 Socket 连接,通过约定端口交互数据。 |
IPC 扫码配网 | IPC 设备通过扫描 App 上的二维码,来获取配网数据信息。 |
Zigbee 设备配网
支持 Zigbee 网关和子设备配网:
名词 | 说明 |
---|---|
Zigbee 网关 | 融合 Zigbee 网络中协调器和 Wi-Fi 功能的设备,负责 Zigbee 网络的组建及数据信息存储。 |
Zigbee 子设备 | Zigbee 网络中的路由或者终端设备,负责数据转发或者终端控制响应。 |
蓝牙设备配网
涂鸦蓝牙有以下几种技术方案:
名词 | 说明 |
---|---|
蓝牙单点 | 蓝牙设备与手机一对一连接的单点设备(蓝牙或蓝牙 LE)。 |
蓝牙 Mesh | 蓝牙技术联盟发布的蓝牙拓扑通信。 |
涂鸦 Mesh | 涂鸦自研的蓝牙拓扑通信,使用场景与蓝牙 Mesh 产品相同。 |
双模设备 | 一些多协议设备也会使用到蓝牙技术,例如同时具备 Wi-Fi 能力和蓝牙能力的 双模设备。 |
扫码配网设备
扫码配网设备上电后即连接了涂鸦的云服务,App 通过扫描设备上的二维码让设备在云端激活绑定。这个二维码必须是涂鸦支持的二维码规则,具体接入方式可找我咨询。
名词 | 说明 |
---|---|
GPRS 设备 | 采用 GPRS 通信技术接入网络连接云服务的智能设备。 |
NB-IoT 设备 | 采用窄带物联网(NarrowBand-Internet of Things)技术的智能设备。 |
自动发现配网
融合涂鸦智能通用配网技术实现,为用户提供一套快捷配网的功能。
集成业务包
创建工程。
在 Android Studio 中建立的工程,接入涂鸦智能生活 SDK 并完成 业务包框架接入。
配置业务的 build.gradle。
dependencies { api 'com.tuya.smart:tuyasmart-bizbundle-device_activator:4.2.0-22' }
混淆配置。
#fastJson -keep class com.alibaba.fastjson.**{*;} -dontwarn com.alibaba.fastjson.**#rx -dontwarn rx.** -keep class rx.** {*;} -keep class io.reactivex.**{*;} -dontwarn io.reactivex.** -keep class rx.**{ *; } -keep class rx.android.**{*;}#fresco -keep class com.facebook.drawee.backends.pipeline.Fresco -keep @com.facebook.common.internal.DoNotStrip class * -keepclassmembers class * { @com.facebook.common.internal.DoNotStrip *; }#tuya -keep class com.tuya.**{*;} -dontwarn com.tuya.**
功能调用
功能配置
配置项 | 字段名 | 描述 | 默认配置 |
---|---|---|---|
热点名称配置 |
<string name="ap_mode_ssid">SmartLife</string>
|
热点配网支持的热点前缀列表 |
SmartLife
|
是否支持蓝牙 |
<bool name="is_need_ble_support">true</bool>
|
是否支持蓝牙设备配网功能 |
true
|
是否支持蓝牙 Mesh |
<bool name="is_need_blemesh_support">true</bool>
|
是否支持蓝牙 Mesh 设备配网功能 |
true
|
是否支持扫一扫 |
<bool name="is_scan_support">true</bool>
|
是否支持列表页面右上角扫描配网功能 |
true
|
自发现是否支持 Wi-Fi 快连配网 |
<bool name="is_config_activator_ez">false</bool>
|
是否支持自发现页面配网 Wi-Fi 快连类型设备 |
false
|
方法调用
TuyaDeviceActivatorManager.startDeviceActiveAction(this);TuyaDeviceActivatorManager.setListener(new ITuyaDeviceActiveListener() {@Overridepublic void onDevicesAdd(List<String> list) {}@Overridepublic void onRoomDataUpdate() {}@Overridepublic void onOpenDevicePanel(String s) {}@Overridepublic void onExitConfigBiz() {}});
入参说明
参数 | 说明 |
---|---|
activity | 配网 activity |
homeId | 家庭 ID,详情请参考涂鸦智能生活 SDK 家庭信息管理 |
出参说明
参数 | 说明 |
---|---|
devIds | 配网成功的设备 ID 列表 |
updateRoomData | 房间设备信息是否有变更 |
onOpenDevicePanel | 可以打开某个面板,根据实际业务需要选择实现 |
onExitConfigBiz | 未执行配网,主动退出配网业务,根据实际业务需要选择实现 |
通用配网UI业务包
安卓版通用配网业务包提供配网列表数据查询能力,提供了查询数据列表自定义展示的方法。大家可以结合涂鸦 IoT 平台支持的配网列表页数据,来配置列表页。
功能说明
通过
TyActivatorExtraBusinessKit
提供的对应方法查询对应的数据类目信息。请在
build.gradle
文件依赖声明中,配置相关依赖:dependencies {...implementation 'com.tuya.smart:tuyasmart-TuyaSmartActivatorExtraBizBundle:1.0.0'...}
查询配网列表一级品类数据
接口说明
getDeviceLevelFirstData(callback)
请求参数
无
请求示例
TyActivatorExtraBusinessKit.INSTANCE.getDeviceLevelFirstData(new Business.ResultListener<CategoryResultBean>() {@Overridepublic void onFailure(BusinessResponse businessResponse, CategoryResultBean categoryResultBean, String s) {}@Overridepublic void onSuccess(BusinessResponse businessResponse, CategoryResultBean categoryResultBean, String s) {}});
返回示例
{"result":{"defaultLevel2List":[//默认二级品类列表{"tagCode":"cz_tag",//二级标签"name":"Socket",//二级标签名称"level3Items":[//三级类目信息{"capability":1,//能力值"icon":"https://images.tuyaus.com/smart/product_icon2/cz_1.png",//图标"name":"Socket",//品类名称"attribute":5,//标位"category":"wf_cz",//品类 code"activatorDes":"Wi-Fi"}]},{"tagCode":"gj_tag","name":"Tool","level3Items":[{"capability":1024,"icon":"https://images.tuyaus.com/smart/app_category/dcb_2b_4_1618543239196.png","name":"Battery pack","attribute":5,"category":"dcb_2b_4","activatorDes":"BLE"}]}],"level1List":[//一级类目列表{"level1Code":"dgzm",//一级类目 code"name":"Electrical",//一级类目名称"type":0//配网列表类型:0-标准},{"level1Code":"zm","name":"Lighting","type":0}],"defaultWglist":[//默认网关列表{"capability":4097,//能力值"display":{//配网引导描述"wcAddBtText":"Confirm the two green lights are on.","wcTip":"Please plug in the gateway and connect it to the router, making sure your phone and the gateway are under the same network. Then, comfirm that the light is on.","wifiIconUrl":"https://images.tuyaus.com/smart_res/Group_8@2x.png","wcHelpUrl":"https://images.tuyaus.com/smart/connect-scheme-v3/help/template/wc_wgzk_zigbee/common_network/wc_wgzk_zigbee_ez_en.html","wifiTitle":"Select 2.4 GHz Wi-Fi Network and enter password.","wifiContent":"If your Wi-Fi is 5GHz, please set it to be 2.4GHz.","wcTipIconUrl":"https://images.tuyaus.com/smart_res/iot_os/wgzk_wc_2green@2x.png"},"icon":"https://images.tuyaus.com/smart/product_icon2/zigbee_4097.png","name":"Gateway","linkModes":[{"leadList":[{"iconUrl":"https://images.tuyaus.com/smart_res/iot_os/wgzk_doublelink_power_network.png","title":"Please plug in the gateway and connect it to the router."},{"iconUrl":"https://images.tuyaus.com/smart_res/iot_os/wgzk_reset@2x.png","title":"Hold the RESET button for 5s."},{"iconUrl":"https://images.tuyaus.com/smart_res/iot_os/wgzk_wc_2green@2x.png","title":"Confirm the two green lights are on."}],"linkMode":8,"title":"Cable"}],"enableLead":false,"attribute":0,"category":"wf_zig_zigbee"}]},"t":1622190464866,"success":true,"status":"ok"
}
查询配网列表二级品类数据
接口说明
getDeviceLevelSecondData(levelCode,type,callback)
请求参数
名称 | 参数类型 | 说明 |
---|---|---|
levelCode | String | 一级类目的 levelCode |
type | Int | 一级类目的 type |
请求示例
TyActivatorExtraBusinessKit.INSTANCE.getDeviceLevelSecondData(level1Bean.getLevel1Code(),level1Bean.getType(),new Business.ResultListener<ArrayList<CategoryLevelTwoBean>>() {@Overridepublic void onFailure(BusinessResponse businessResponse, ArrayList<CategoryLevelTwoBean> categoryLevelTwoBeans, String s) {}@Overridepublic void onSuccess(BusinessResponse businessResponse, ArrayList<CategoryLevelTwoBean> categoryLevelTwoBeans, String s) {}});
返回示例
{"result":[{"tagCode":"zm_dj_tag",//二级标签"name":"光源",//二级标签名称"level3Items":[{"capability":1025,//能力值"icon":"https://images.tuyacn.com/smart/program_category_icon/wf_ble_dj.png",//图标"name":"光源",//品类名称"attribute":4,"category":"wf_ble_dj",//品类 code"activatorDes":"蓝牙+Wi-Fi"}]},{"tagCode":"zm_dd_tag","name":"灯带","level3Items":[{"capability":1025,"sale":"","icon":"https://images.tuyacn.com/smart/app_category/wf_ble_dd_1598683823026.png","name":"灯带","sort":0,"attribute":4,"category":"wf_ble_dd","activatorDes":"蓝牙+Wi-Fi"}]}],"t":1622688701083,"success":true,"status":"ok"
}
查询配网列表三级品类详情数据
接口说明
getDeviceLevelThirdDetailData(bizType,bizValue,callback)
请求参数
名称 | 参数类型 | 说明 |
---|---|---|
bizType | Int |
|
bizValue | String |
|
请求示例
TyActivatorExtraBusinessKit.INSTANCE.getDeviceLevelThirdDetailData(0,thirdBean.getCategory(),new Business.ResultListener<CategoryLevelThirdBean>() {@Overridepublic void onFailure(BusinessResponse businessResponse, CategoryLevelThirdBean categoryLevelThirdBean, String s) {}@Overridepublic void onSuccess(BusinessResponse businessResponse, CategoryLevelThirdBean categoryLevelThirdBean, String s) {}});
返回示例
{"result":{"display":{"ezAddBtText":"确认指示灯快闪","wifiIconUrl":"https://images.tuyacn.com/smart_res/Group_8@2x.png","ezHelpUrl":"https://images.tuyacn.com/smart/connect-scheme-v3/help/template/ez_default_default/common_network/ez_default_default_ez_zh.html","ezTipIconUrl":"https://images.tuyacn.com/smart/connect-scheme-v3/tip-icon/ty_common_fast%402x.gif","apTip":"接通电源, 确认指示灯在慢闪。注意:重置设备后,请在三分钟内完成配网操作","wifiTitle":"选择 2.4GHz Wi-Fi 网络并输入密码","apTipIconUrl":"https://images.tuyacn.com/smart/connect-scheme-v3/tip-icon/ty_common_slow%402x.gif","apAddBtText":"确认指示灯慢闪","wifiContent":"如果你的 Wi-Fi 是 5GHz 的,请先设置为 2.4GHz","ezTip":"接通电源, 确认指示灯在快闪。注意:重置设备后,请在三分钟内完成配网操作","apHelpUrl":"https://images.tuyacn.com/smart/connect-scheme-v3/help/template/ap_default_default/common_network/ap_default_default_ap_zh.html"},"linkModes":[//配网方式{"leadList":[//配网引导{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step1ty.png","title":"将设备接通电源,10 秒后断电再接通电源"},{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step2ty.png","title":"长按复位键 5 秒"},{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step3tykuai.gif","title":"确认指示灯快闪"}],"linkMode":1,"desText":"默认","title":"Wi_Fi 快连"},{"leadList":[{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step1ty.png","title":"将设备接通电源,10 秒后断电再接通电源"},{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step2ty.png","title":"长按复位键 5 秒"},{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step3tykuai.gif","title":"确认指示灯快闪后,再进行下一步骤"},{"iconUrl":"https://images.tuyacn.com/smart_res/iot_os/step4tyman.gif","title":"再次长按复位键 5 秒,直至指示灯慢闪"}],"linkMode":2,"title":"热点配网(兼容模式)"}],"enableLead":false},"t":1622689764143,"success":true,"status":"ok"
}
设备配网和通用配网 UI 业务包(内附代码段)相关推荐
- 什么是护网(HVV)?需要什么技术?(内附护网超全资料包)
一.什么是护网行动? 护网行动是以公安部牵头的,用以评估企事业单位的网络安全的活动. 具体实践中.公安部会组织攻防两方,进攻方会在一个月内对防守方发动网络攻击,检测出防守方(企事业单位)存在的安全漏洞 ...
- (转)[Unity3D]UI方案及制作细节(NGUI/EZGUI/原生UI系统) 内附unused-assets清除实例
转载请留下本文原始链接,谢谢.本文会不定期更新维护,最近更新于2013.09.17. http://blog.sina.com.cn/s/blog_5b6cb9500101bplv.html 一.方案 ...
- ESP8266 web配网微信小程序配网 全平台配网库 arduino 傻瓜式通用库
wifi_link_tool esp8266通用配网库 (arduino) 库地址:点击进入GitHub 这是一个为esp8266设计的通用配网库 该库免费提供 使用请注明出处 允许毕业设计使用本库 ...
- 物联网智能家居需要服务器吗,智能家居设备常见的两种配网/联网方式
你是否用过智能家居?你知道智能家居是怎么连上你家WIFI热点吗?你是否好奇APP是怎么和智能家居通话的?今天的这篇文章为你揭晓智能家居配网原理. 绝大多数智能家居都要求用户安装一个APP,通过APP完 ...
- Matter协议特性解析(三) 设备发现,认证和配网
聚焦:芯产品,芯市场,芯资讯 本文是Matter专题第6篇文章: 设备发现,认证和配网,是网络构建流程的重要部分:Matter入网流程,为了保证安全,设计偏复杂,为了方便理解,本文从3个不同的维度进行 ...
- 【图解】物联网设备的N种Wi-Fi配网方式
1 背景介绍 物联网时代,各种各样的智能物联网设备正走进我们我们的生活,智能门锁.摄像头.猫眼门铃.扫地机.智能音箱.空气净化器.体脂秤等等. 这些物联网设备都有一个共同的特征,就是可以联网,通过配套 ...
- WiFi配网~智能家居配网解决方案
1. 什么是配网? 先解释一下什么是配网:当智能设备交付用户时,用户如何根据说明手册或者指引,简单成功的将联网设备连接到路由器下面.这里主要是wifi产品,蓝牙.Zigbee.NB-Iot配网是不 ...
- 小程序AP配网和AK配网教程(开源)
小程序AP配网和AK配网教程(开源) 一. Airkiss配网的实现方式 Airkiss配网我们采用插件的形式,非常简单方便.感谢半颗心脏大佬的开源插件. 1. Airkiss 简介 AirKis ...
- ESP32超详细学习记录:wifi配网,AP配网,浏览器配网,无线配网
不想了解代码实现,可直接到代码部分copy!ESP32亲测可用. 使用设备ESP32开发板(ESP32-WROOM-32) 搜了好多别人写的资料,很多都是copy+copy,也没有什么解释.啪,代码放 ...
最新文章
- 在 5G 速度上,iPhone 12 只是个弟弟
- R语言sample.int有放回或者无放回采样随机整数实战
- POJ2762 Going from u to v or from v to u? 强连通+缩点
- 重磅 | 2017年全球最聪明公司排行榜TOP50,哪9家中国公司上榜?
- 100c之31:哥德巴赫猜想
- 好习惯!pandas 8 个常用的 option 设置
- 2017届-应届毕业生-兆芯 GPU architecture design校招在线笔试题
- 疫情时代无接触AI人脸识别技术助力智慧工地迅猛发展
- 魔兽和星际的最大差别
- 抗击疫情 融云在行动
- 上海联通第一家冰激凌无限店正式开业,拥抱新零售时代!
- 利用Python做一个漂亮小姐姐词云跳舞视频
- Cisco与H3C交换机互联的小风波
- Docker容器修改端口映射
- Java代码实现回文数
- 如何判断电脑是否被黑客入侵
- PHP7.4编译安装
- HTML学习2之常用标签详细介绍
- 天猫升级:用“大数据”做生意
- 双远心镜头原理及选型(一)