设备控制SDK使用
一、概述
本文主要介绍如何使用设备控制SDK进行Api调用
二、前提条件
- 完成准备工作
- 完成环境搭建
- 完成设备控制SDK集成
三、使用
3.1 跳转到指定的设备页面
LumiDeviceRouterManager.getInstance().startDevicePage(
deviceModel,
deviceId
)
参数说明
| 字段 | 数据类型 | 描述 | 获取渠道 |
|---|---|---|---|
| deviceModel | String | 设备模型值 | 设备配网成功后,从云端获取 |
| deviceId | String | 设备Id | 设备配网成功后,从云端获取 |
3.2 事件监听
当用户在页面操作的过程中,点击某些按钮亦或者满足其他条件时,可以通过事件监听器来获得事件回调。例如点击按钮跳转到宿主App中的页面,或者第三方自定义的事件
3.2.1 注册&解绑
//注册
LumiReactNativeManager.getInstance().registerRNMessageCallback(object :IRNMessageCallback{
override fun onHandleMessage(jsonMessage: String, promise: Promise?) {
//To Do Something
}
})
//解绑
LumiReactNativeManager.getInstance().unregisterRNMessageCallback()
3.2.2 常见事件列表
| 事件 | 类型 | 描述 |
|---|---|---|
| action_access_success | 通知 | 设备入网成功后的事件,第三方App可以做一些自己的业务 |
| AddGatewway | 通知 | 部分门锁需要绑定网关,其中如果该账号下没有网关,会触发该事件,第三方App自行处理 |
| OpenDeviceControlPage | 通知 | 打开指定设备页的通知,第三方App可以做一些自己的业务 |
3.3 设备插件
3.3.1 依赖本地插件文件
SDK支持加载本地的插件文件,仅需将对应的文件放在目录中即可。
插件及配置文件请放在assets/lumi/目录下
依赖本地插件的情况下,不会从云端进行插件更新,如需更新,则需要开发自行将新版本的RN插件放到assets目录中,重新进行打包发版。
3.3.2 依赖远程插件文件
SDK支持加载放在服务器的远程插件文件,并且支持热更新,可以与本地插件配合使用。
该功能涉及到远程插件文件的管理及下发,暂时不对外使用,如有需求,请联系商务。