米家插件平台的技术实践之路

2016年小米正式发布米家品牌,此后米家开始接入第三方的智能硬件产品,小米的IoT生态也迎来了快速发展。截止到2020年Q3,小米AIoT平台已连接的IoT设备(不包括智能手机及笔记本电脑)数达到2.89亿台。如何高效的接入和管理这么多设备,是米家App一直在探索的问题。我们希望通过米家插件来解决这个问题,下面将分享米家插件平台在研发过程中的一些探索和实践。

1

 米家APP介绍 

米家App是一个智能硬件管理平台,不仅连接小米及生态链公司的智能产品,同时也开放接入第三方智能硬件,为用户提供智能生活整体解决方案。用户可以简单便捷地通过手机与智能硬件交互,并实现智能硬件之间的互联互通。一键实现个性化定制的智能场景,与家人朋友分享智能设备。

2

 什么是米家插件 

米家插件是用户在米家App中用来控制设备的一段小程序。每个设备都有其相对应的插件,由开发者(通常是设备厂商)负责开发,测试,发布与维护。下面是一个灯组插件主要界面的截图。

米家插件基于小米研发的插件框架开发。插件框架是米家为支持插件开发而提供的JavaScript接口的集合,赋予了开发者开发/调试/运行插件的能力。接入小米IoT平台的智能硬件,米家App正是通过米家插件来控制和管理设备的。

2.1 米家插件发展史

随着小米IoT业务的快速发展,米家插件也经历了三个阶段:Native插件阶段、ReactNative插件(简称RN插件)阶段、公版插件阶段。

  1. Native插件阶段

在小米IoT业务早期,接入米家生态的智能设备还不多,这个阶段的插件都是Native插件,开发者需要基于iOS和Android分别开发插件,然后米家集成插件代码(Android可以动态下载)。随着小米IoT业务的快速发展,米家APP的安装包体积快速增长,代码维护困难,迫切需要一套支持动态化的插件方案。

  1. RN插件阶段

随着IoT业务的快速发展,Native插件的弊端越来越明显。为了适应业务的发展,米家对新一代的插件方案要求是支持动态化和跨平台。2018年我们开始着手下一代插件方案的研究,结合用户体验和开发维护成本,最终我们选择基于ReactNative搭建一套插件框架,以帮助开发者快速开发米家插件。基于RN的插件框架,插件开发语言统一为JavaScript,开发者只需要一套RN插件代码,便可运行在iOS和Android双平台上,极大的减轻了开发者的开发成本。

  1. 公版插件阶段

为了进一步降低开发成本,米家启动了公版插件的研发工作。公版插件是由米家开发,支持开发者做一些个性化配置并且可以免费使用的通用插件。正如其名,某个品类的

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值