收藏官网首页
查看: 9444|回复: 5

关于获取设备列表问题

1

主题

5

帖子

17

积分

新手上路

Rank: 1

积分
17
跳转到指定楼层
楼主
发表于 2015-5-25 14:50:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
每次打开app 获取设备列表必须通过[color=rgba(0, 0, 0, 0.74902)]XPGWifiSDK.sharedInstance().getBoundDevices(String uid,String token,String… specialProductKey);来获取设备吗,而且这个回调是同步回调,还是需要等待一段时间才会调用 [color=rgba(0, 0, 0, 0.74902)]XPGWifiSDKListener.didDiscovered(int result, List<XPGWifiDevice> devicesList)这个方法??

1

主题

5

帖子

17

积分

新手上路

Rank: 1

积分
17
沙发
 楼主| 发表于 2015-5-25 14:52:35 | 只看该作者
还有,当手机网络不佳的情况下,怎么判断XPGWifiDevice.write(String jsonData); 是否成功呢

8

主题

39

帖子

259

积分

版主

Rank: 7Rank: 7Rank: 7

积分
259
板凳
发表于 2015-5-25 21:21:24 | 只看该作者
XPGWifiSDKListener.didDiscovered是异步回调,同时获取网络和本地路由器的设备。远程的列表获取后会回调,发现了本地设备也会回调,所以该接口会回调多次,因为发现设备通过UDP广播的形式,因此设备回复一次,则回调一次。另外,XPGWifiDevice.write(String jsonData)方法,在设计上是需要设备收到以后回复一个实时状态的,一段时间内没收到回复则可判断为发送失败。此时可提示用户发送失败或后台重发。

1

主题

5

帖子

17

积分

新手上路

Rank: 1

积分
17
地板
 楼主| 发表于 2015-5-26 11:04:01 | 只看该作者
碎羽 发表于 2015-5-25 21:21
XPGWifiSDKListener.didDiscovered是异步回调,同时获取网络和本地路由器的设备。远程的列表获取后会回调, ...

也就是说,比如用户开灯操作调用了write方法,我还需要计时,timeout来判断这个开关灯指令是否成功?

1

主题

5

帖子

17

积分

新手上路

Rank: 1

积分
17
5#
 楼主| 发表于 2015-5-26 11:06:19 | 只看该作者
免费使用STM32、APP自动代码生成工具
如果没网络情况下调用XPGWifiSDK.sharedInstance().getBoundDevices(String uid,String token,String… specialProductKey); 方法
XPGWifiSDKListener.didDiscovered是不会有回调的吗- - 每次打开app 都要从网络上,或者路由器上获取设备吗?

27

主题

235

帖子

1053

积分

金牌会员

Rank: 6Rank: 6

积分
1053
6#
发表于 2015-5-26 12:12:51 | 只看该作者
getBoundDevice() 是需要依赖网络的。这个函数,在任何情况(包括没有网络的情况)下都会确保至少有一个回调。当然,这个回调是包含主动上报的事件,所以会触发不只一次的回调。要判断完成,建议自己做个计时器判断即可。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表