【Android工程师与智能家居产品的第一次接触①】创建我的第一个应用BY涂鸦、酷宅、乐鑫、机智云等
智能家居产品的生存道路可谓是起起落落,但近年来似乎又将智能家居推上一个新的热潮。这不经归功于国家经济水平的提升,更是代表着一项技术成熟。
那么这样技术技术又指的是什么呢,简单说也就是通讯技术,小菜(玉念聿辉)在这里做个大致的分类,首先一个在智能产品中常见的就是“WIFI”,其二就是“蓝牙”,最后就是“Zigbee”,通过这几哥俩的配合使用,才得益于智能家居如今这风生水起的景象。小菜在这里对涉及到的相关内容做个简单记录,目的给如我一般的初学者一个启发,起个抛砖引玉的作用。
注:本文为玉念聿辉的原创作品,仅作为技术探讨不予以商业用途,如有侵权请联系删除。
一、涂鸦智能Android SDK 接入指南

1.1、OEM快速构建
涂鸦支持OEM快速构建,不需要写代码,简单的根据提示进行操作(如定义名字、包名、lluancher图、logo图、主题颜色),即可创建一个属于自己的智能家居控制app。
为了方便大家更好的体验OEM App服务的创建过程,他们近期上线了OEM App服务体验功能,体验服务和正式服务的配置流程基本一致,您可以根据需要选择是否体验。
OEM快速构建地址:https://docs.tuya.com/cn/app/app-autobuilding.html
不同账号支持创建的体验服务次数
| 账号等级 | 个人账号 | 企业账号 | 旗舰账号 |
|---|---|---|---|
| 可创建OEM App体验服务数量 | 3次 | 50次 | 100次 |
创建体验服务注意事项:
- 删除已创建的体验APP会返还体验服务的次数;
- OEM App 体验时间为30天,体验过程中随时可以付款,到期后如仍未付款将无法进入配置App,可完成支付进行激活,我们会为您保留配置数据;
1.2、SDK自助开发
参考至:https://docs.tuya.com/cn/app/app-sdk/android-sdk-3.0.html
SDK DEMO:https://github.com/TuyaInc/tuyasmart_home_android_sdk
涂鸦全屋智能SDK提供了以家庭为单位,对硬件设备、涂鸦云通讯的接口封装,加速应用开发过程,主要包括了以下功能:
- 硬件设备相关(配网、控制、状态上报、定时任务、群组、固件升级、共享)
- 账户体系(手机号、邮箱的注册、登录、重置密码等通用的账户功能)
- 家庭管理
- ZigBee网关
- 消息中心
- 意见反馈
- 涂鸦云HTTP API接口封装 (参见涂鸦云api调用)
二、酷宅Android SDK接入指南
参考至:https://www.showdoc.cc/coolkit?page_id=1196566002122926
酷宅也是目前智能产品上比较常见的,暂时没有支持快速构建app的功能,不过在SDK自助开发上还是比较底层的(仅是后台的一些数据接口),对于开发者来说涉及到的知识点还是比较多,有益于成长。
创建第一个应用
- 第一步:登录,认证帐号获取认证token,通过认证后才能获取访问服务的权限。
- 第二步:设备列表,获取帐号下添加的所有设备。设备控制时需要提供相关设备数据以及用户数据。
- 第三步:访问分配服务,获取连接信息。
- 第四步:建立连接,通过第三步获取的连接信息,建立连接。
- 第五步:握手,通过第一步获取的认证信息(at即access token),进行握手。握手成功后,表示认证通过可以接下来进行设备控制。
- 第六步:控制设备,通过第二步获取的设备信息,发送update指令进行设备控制。
创建websocket连接和发送控制命令流程

三、机智云Android SDK接入指南
参考至:http://docs.gizwits.com/zh-cn/AppDev/AndroidSDKA2.html
机智云的设备接入SDK(以下简称SDK)封装了手机(包括PAD等设备)与机智云智能硬件的通讯过程,以及手机与云端的通讯过程。这些过程包括配置入网、发现、连接、控制、心跳、状态上报、报警通知等。使用SDK,可以使得开发者快速完成APP开发,开发者仅需关注APP的UI和UE设计即可,而相对复杂的协议与错误处理等事项可忽略。

通用流程图

四、乐鑫SDK接入指南
参考至:https://www.espressif.com/zh-hans
StudyInEsp8266 DEMO:https://github.com/xuhongv/StudyInEsp8266
乐鑫 SDK 是一个免费开源的软件开发工具包 (Software Development Kit),包含驱动程序和示例代码,能够让用户在短时间内掌握并进行开发!

这里说一下推荐乐鑫的理由,虽然相对于前两者来说,似乎乐鑫在并没有提到太多关于Android端的支持,更多的是在硬件模块支持上,但对于小菜来说,想了解wifi模块控制还是从它开始比较好。
更多推荐
所有评论(0)