作为前 Tuya 客户端开发,越用 Homekit 越是被 Apple 的产品力和开发力所折服,真的太强了。
说说我的看法吧。
Tuya 以“设备上云”为前提,而 Apple 则都是“本地控制” 来展开。
这两点不分好坏,Apple 以隐私为核心,所以本地控制是必然的选择。Tuya 的“云控制”则对于设备的控制有了更多可能。
但注意,Tuya 联网控制的安全性也是很高的,任何命令都是被加密和认证的。
1. Homekit 的用户一般不会拥有 100 个以上的设备;
2. Tuya 主要是 to B 业务,比如有非常多的用户含有几百个、几千个设备。
所以,在稳定性和使用体验上进行取舍就看各自产品的选择了。
一个网关下挂了 100 个设备,当客户端下发了“查询在线状态”的命令后,如果网关同时查询所有子设备状态,那么短时间内网关会承载非常大的压力,然后影响稳定性和准确性。
这个情况 Homekit 也许不会考虑,但是 Tuya 考虑到一个100元左右的网关的性能,则需要对子设备分批下发查询指令。
Homekit 查询设备状态,基本都是自动的,用户不用关心。
而 Tuya 的客户端,查询状态则以用户下拉刷新为主,自动查询则有一些条件。
说说我在被裁之前的一个想法。
由于当时在 iOS 的业务部门,所以对一些东西比较熟悉。
于是发现:
1. 首页功能太过单调,无非是设备展示+设备控制,家庭管理和分享管理都在二级页面;
2. 我们的场景能力(自动化),在使用率上非常低;
3. 设备配网后,可以做些配置的预备工作。
把设备的DP概念拓展到家庭上,即在设备的拓扑结构上进行扩展。
这样:
1. 家庭和房间也有数据了
2. 首页上的显示就是以家庭和房间为主,不再是设备了;
3. “场景”的概念则从“控制设备操作”转变为“控制某个区域”。
注:DP (data point)就是设备的属性,如 开/关 状态。
最基础的一个问题是:由于 to B 业务很多,设备的DP是不规范的,如何规范DP使dp聚合?
比如:我怎么知道这个设备的开关和另一个旋钮的调光开关是能合并的?
这个问题,也是我今天感叹 Apple 牛逼的一个原因。
这需要十年如一日得坚持一个方向。
截了一些图,说说佩服apple的原因:
首先是首页。家庭下,展示出了温湿度,这个温湿度是多个数据聚合的结果(以区间展示)
通过siri让他在“客厅”播放音乐时,会同时让 TV、Homepod、Sonos 一起播放。
如果你用 Tuya的场景,或者 捷径去控制(不用捷径内的homekit指令实现),那么你需要设置n个命令来一一告诉所有设备该怎么做,而现在只需要告诉房间即可。