2020年三月初,华为平台大改,此文档都是使用的华为平台的老接口,虽然平台兼容了老接口,本文还是仅供参考,流程是没太大问题的
文章目录
前言
第一次写博客,有不足之处请谅解。
网上华为云的使用案列太少了,踩了一个多月的坑,终于把一套流程简单的走完了一遍,包含平台侧开发和应用侧开发。已有真实设备接入IoT平台的可以忽略Mqtt.Fx的模拟接入和平台侧开发!若不需要开发应用侧,可以通过Postman模拟应用侧,后文都会详细介绍。
华为的IoT只要设置对了订阅路径,数据就会自动推送到你所设置的订阅路径(即自己搭建的简易服务器),所以北向应用的重点就是设置订阅路径!
本文章基于Java开发,功能较为简单:
1.Mqtt.Fx(后文简称fx)模拟设备接入华为的设备管理平台,设备管理平台可接收fx上报的数据。
2.通过官方Java API进行消息订阅,搭建应用服务器,接收IoT平台推送的数据,显示在IDEA控制台。
效果图如下:
扩展功能:手机app获取服务器数据并实时刷新显示。
所需软件:Mqtt.fx,tomcat,IDEA,eclipse(JavaEE版),软件的安装与配置自行查找和完成,使用都比较简单,不需要太多的基础知识。
关于设备管理和开发者中心的差别,前者基于商用可能收费,步骤较为复杂,后者一般用于测试,操作较为简单,可免费使用。两者操作差别不大,下文都会讲述。
下面开始整套流程的具体操作,大部分根据华为官方文档步骤走,有坑的地方我会补充。
开发者中心
平台侧开发
大致步骤参考上方官方文档,下面是需要改动或者注意的地方(请根据自己掌握的内容自行跳过多余部分)
1.设备注册
根据文档完成开发中心申请和创建项目,第二步产品在线开发时,创建产品时注意,接入应用层协议类型为MQTT,数据格式为JSON,其他内容自定义(LWM2M数据格式时二进制码流,需要编解码插件,没有接触,不是很清楚)
进入profile定义时,可根据自己设备想要的功能和参数自定义。(profile官方定义为产品模型,需要定义服务名称和属性列表,这两类参数在后面数据传输时很重要)我是如下定义的,可自定义简单点的。
完成此步骤后,官方文档后面的编解码插件在线开发,使用在/离线模拟器调试等操作可以忽略,有兴趣的可以去了解。
下面,点击侧边栏的“设备管理”,新增真实设备,选择刚刚注册号的产品,自定义“设备名称”和“设备标识”。
注册成功会生成设备ID和密钥,请复制粘贴保存好,用fx连接时有用!!!