当产品为网关或子设备时,区别与普通产品会遇到的常见问题和解决方法。

网关子设备配网绑定

安卓网关相关

其他问题

网关是否支持路由器热点配网(router-config)?

支持的,大致流程为:SDK扫描到adha的WiFi后,会自动加入adha,上报给云端需要配网的设备。此时使用与路由器绑定过的App账号,可以通过本地发现找到这个设备,单击该设备后开始配网。

配网成功就表示已经绑定了网关吗?

配网和绑定是分开的,在配网成功后再进行绑定。

以太网网关的人机交互没有显示配网引导

配网引导是针对WiFi、zigbee设备提供的。

网关添加子设备成功,但App端与子设备绑定失败

配网需要由App端发起,使用APP配网时,网关会收到LINKKITEVENT_SUBDEV_PERMITED,收到该事件后,再调用linkkit_gateway_subdev register()去注册设备。

已绑定网关的设备,如何退网后绑定另一网关

动态注册成功之后,持久化获取到的DeviceName信息。设备证书(DroductKey、DeviceName、DeviceSecret)需要保存在非遗失目录,确保应用卸载之后数据仍然存在。

动态初始化成功建联之后,不能再执行动态初始化。后续应用重新启动(包括卸载后重装启动)都需要先从持久化存储中获取设备证书,再执行初始化建联(即一机一密方式建联),也即动态注册只能执行一次。

App用户只解绑了网关,对应的子设备会解绑吗?

用户与子设备关系会一起被解绑,网关设备与子设备的关系不受解绑操作的影响。

App端调用解绑子设备的接口,会解绑子设备和网关的拓扑吗?

直接调用/awss/subdevice/unbind下接口解绑当前用户和指定子设备。如果当前用户是子设备的管理员,则同时自动解除当前子设备和网关的网络拓扑关系。

App端解绑或者绑定子设备是否都需要网关在线?

如果涉及到子设备需要根据情况而定。

  • 使用App配网时,网关先收到LINKKIT_EVENT_SUBDEV_PERMITED事件,再调用linkkit_gateway_subdev_register()去注册设备。
  • 解绑接口时,无论网关还是子设备都不需要网关在线。

子设备被解绑时调不到网关LINKKIT_EVENT_SUBDEV_DELETED的event

目前LINKKIT_EVENT_SUBDEV_DELETED此事件无法触发event。暂时解决方式为:收到6401的错误码,把网关上该子设备删除。

安卓网关如何帮多个子设备上报数据?

  • 所有设备一起动态注册,消息格式如下。
    for () {
    addSubDev
    login
    initSubDevThing
    }
  • 上报消息。消息格式如下。
    for() {
    post
    }

安卓带屏网关设备如何使用公版App发现?

安卓版本的Link Kit SDK,并没有实现配网功能。安卓设备一般都带屏,通常是厂商通过屏显发现ssid,再输入密码连接到路由器。

控制台编辑产品勾选免开发公版App,使用公版App本地发现设备后,绑定设备后进行调试。

网关及子设备掉线是什么原因?

可能原因有以下几处,请逐一排查。

  • 网关或子设备断电
  • 子设备被重置了
  • 网关心跳超时

设备没有上报版本属性,为什么控制台能显示?

默认上传,不需要通过TSL模型。

网关定义的部分标准功能在控制台页面找不到

模组相关的标准功能属性,页面上不可见。

网关能主动向云端获取某子设备的属性值吗

云端数据是获取不到的。linkkit_get_value是获取本地的数据,是设备之前上报的备份数据。

动态注册的时候,更换网关什么注意事项吗?

  • 网关下有子设备,不可直接更换新的网关,需要把所有的绑定关系解除后,再绑定新网关。
  • 一机一密方式的子设备,设备证书不需要备份,可以下次注册时再从云端获取。
  • 一型一密方式的子设备,设备证书必须进行备份,否则会丢失。

为什么网关设备推送的频率要比普通设备快?

云端的设备数据实时推送是当有设备相关数据产生时,会调用该URL接口进行实时数据推送。