软件说明
应用操作说明
测试首页
- “连接” : 用于连接远端服务器。具备“连接 & 断开” 两个功能
- “设置” : 用于添加更多主题
- “订阅” & “解除” : 仅用于默认主题“Harvey2024”
- “发布” : 发布消息前,用来设置消息QoS 和 主题
- “发送” : 发布已输入的文字
主题设置页
- “+” : 添加主题
- 主题列表,长按可删除主题
运行中的首页
接口使用说明
学习前准备:
开始前熟悉鸿蒙文档
连接
//构建MQTT CONNECT参数
let CMD = MQTTConnect.create()
.setClientIdentifier('Harvey鸿蒙') //客户端名字
.buildPacket()
//配置Socket并且完成连接
HarmonyOSSocket.get()
.socketCfg({
address: {
address: this.sec1IP + "." + this.sec2IP + "." + this.sec3IP + "." + this.sec4IP,
port: 1883
}
},
)
.connectCfg(CMD)
.connect()
订阅主题
let options: SubscribeTopicNameOptions[] = [
{ topicName: this.currentPublishTopicName} //主题名称
]
HarmonyOSSocket.get().subscribeTopic(options)
发布消息
//构建MQTT PUBLISH参数
let publishConfig = MQTTPublish.create()
.setQoS(this.currentPublishQoS)
.setTopicName(this.currentPublishTopicName)
HarmonyOSSocket.get()
.publishCfg(publishConfig)
.sendMessageByString(this.inputMessage)
消息监听
//错误信息
getContext().eventHub.on(MQTTCommon.EVENTHUB_MQTT_APP_ERROR_MSG, (value) = > {
this.errorMessage = value
})
//
getContext().eventHub.on(MQTTCommon.EVENTHUB_MQTT_CMD_STATUS_MSG, (msg) = > {
if (msg.action === 'connect') { //MQTT CONNECT结果消息
if (msg.value == 0) {
//成功
} else {
Prompt.showToast({ message: '连接失败' })
}
} else if (msg.action === 'close') {
//1. TCPSocket 关闭事件
//2. MQTT 断开命令已发送完毕
} else if (msg.action == 'subscribeack') {
//订阅主题结果
let packet = msg.value as MQTTPacketStruct
} else if (msg.action == 'unsubscribeack') {
//解除主题订阅结果
let packet = msg.value as MQTTPacketStruct
} else if (msg.action == 'publish-s-to-c') {
//收到服务端数据包,即 接收到消息
let packet = msg.value as MQTTPacketStruct
} else if (msg.action == 'publish-c-to-s') {
//客户端发送给服务端数据包
let packet = msg.value as MQTTPacketStruct
}
})
断开服务
HarmonyOSSocket.get().disconnect()
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
MQTT
+关注
关注
5文章
649浏览量
22420 -
HarmonyOS
+关注
关注
79文章
1967浏览量
29997 -
鸿蒙OS
+关注
关注
0文章
188浏览量
4367
发布评论请先 登录
相关推荐
鸿蒙入门实战-ArkTS开发
ArkUI框架提供,ToDoItem为自定义组件,需要开发者使用ArkTS自行声明。
1.@Entry
2.@Component
3.struct ToDoList {
4....
5.build
发表于 01-16 17:27
2024款鸿蒙OS 最新HarmonyOS Next_HarmonyOS4.0系列教程分享
鸿蒙的出现,标志着中国科技的崛起。HarmonyOS就是我们说的华为鸿蒙系统,截止到2023年8月4日已有超过7亿台设备搭载了鸿蒙OS系统。据多家媒体报道,2024年国内有21所985
发表于 02-28 10:29
鸿蒙实战项目开发:【短信服务】
数据管理
电话服务
分布式应用开发
通知与窗口管理
多媒体技术
安全技能
任务管理
WebGL
国际化开发
应用测试
DFX面向未来设计
鸿蒙系统移植和裁剪定制
……
《鸿蒙
发表于 03-03 21:29
鸿蒙Flutter实战:06-使用ArkTs开发Flutter鸿蒙插件
# 使用 ArkTs 开发 Flutter 鸿蒙平台插件
本文讲述如何开发一个 Flutter 鸿蒙插件,如何
发表于 10-22 21:56
如何在鸿蒙系统中移植 Paho-MQTT 实现MQTT协议
MQTT 是当前最主流的物联网通信协议,需要物联网云平台,例如华为云、阿里云、移动OneNET都支持mqtt。而Hi3861则是一款专为IoT应用场景打造的芯片。本节主要讲如何在鸿蒙系
发表于 10-23 22:57
在鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目
移植将支持多任务。(2)onenet协议的移植与实现。主要讲如何在mqtt的基础上实现onenet接入。(3)如何使用onenet云平台(4
发表于 10-25 21:57
【HarmonyOS】在鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目
文章讲了paho mqtt的移植,但是那篇文章只是简单的移植,并不支持多任务,这一次mqtt移植将支持多任务。(2)onenet协议的移植与实现
发表于 10-26 16:59
鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目资料
通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、OneNET接入协议,实现手机APP、网页两者都
发表于 10-26 17:22
【HarmonyOS HiSpark Wi-Fi IoT HarmonyOS 智能家居套件试用 】基于鸿蒙OS系统的边缘计算
智能家居套件的基本组件和使用方法。2.使用提供的基本源代码完成在开发板上的鸿蒙OS系统的搭建和使用,尝试搭建低功耗的鸿蒙
发表于 10-29 14:06
【直播预热】Harmony MQTT/CoAP应用指南——火热报名中
)paho-mqtt主要API及使用3)常用调试工具和分析方法 1. CoAP1)CoAP协议和相关开源项目简介2)移植libcoap到鸿蒙OS
发表于 12-09 17:18
基于鸿蒙Hi3861V100 MQTT协议 对接阿里云物联网平台
更新啦!!!!!!!!!!基于鸿蒙HarmonyOS Hi3861V100 开发板通过MQTT协议 对接阿里云IOT物联网平台同时支持APP端、IOT网页端、设备端 三端数据同步上传和
发表于 01-25 08:31
在鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目 精选资料分享
通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、OneNET接入协议,实现手机APP、网页两者都
发表于 07-13 07:13
鸿蒙 OS 应用开发初体验
的操作系统平台和开发框架。HarmonyOS 的目标是实现跨设备的无缝协同和高性能。
DevEco Studio
对标 Android Studio,开发鸿蒙
发表于 11-02 19:38
鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目
通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、OneNET接入协议,实现手机APP、网页两者都
发表于 10-26 17:27
•0次下载
鸿蒙开发之ArkTS基础知识
一、ArkTS简介 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,匹配了鸿蒙的ArkUI框架,扩展了声明式UI、状态管理等相应的能
评论