精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在鴻蒙系統上使用MQTT編程

系統
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com/#zz

[[353642]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

我們使用的是paho mqtt軟件包,這里介紹一下怎么使用mqtt協議編程。關于鴻蒙系統的mqtt移植好的軟件包,相關github鏈接如下:

https://gitee.com/qidiyun/harmony_mqtt

這里提供一個簡單的編程示例:

這里我們使用MQTTClient編程模型,他支持多任務多線程,非常適合用在鴻蒙系統上。

1. 網絡初始化

這里定義一個 Network 結構體,然后指定我們的MQTT服務器的IP和端口號。

  1. Network n; 
  2.    //初始化結構體 
  3.  NetworkInit(&n); 
  4.  //連接到指定的MQTT服務器IP、端口號 
  5.  NetworkConnect(&n, “XXX.XXX.XXX.XXX”, XXXX); 

 2. 設置MQTT緩存和啟動MQTT線程

我們這里使用的是MQTT線程功能。

  1. MQTTClientInit(&c, &n, 1000, buf, 100, readbuf, 100); 
  2.  MQTTStartTask(&c); 

 3. 設置MQTT相關參數

接下來我們設置MQTT的相關參數,包括版本號、客戶端ID、賬戶密碼等

  1. MQTTPacket_connectData data = MQTTPacket_connectData_initializer;  
  2.  data.willFlag = 0; 
  3.  //MQTT版本為 v3 
  4.  data.MQTTVersion = 3; 
  5.  //設置客戶端ID 
  6.  data.clientID.cstring = opts.clientid; 
  7.  //設置客戶端賬戶 
  8.  data.username.cstring = opts.username; 
  9.  //設置客戶端密碼 
  10.  data.password.cstring = opts.password
  11.  data.keepAliveInterval = 10; 
  12.  data.cleansession = 1; 
  13.  
  14.  //連接到MQTT服務器 
  15.  rc = MQTTConnect(&c, &data); 

 4. 訂閱主題和接收消息

訂閱主題可以使用如下函數

  1. MQTTSubscribe(&c, topic, opts.qos, messageArrived); 

它的函數原型如下:

  1. DLLExport int MQTTSubscribe(MQTTClient* client, const char* topicFilter, enum QoS, messageHandler); 

其中:

  1. void messageArrived(MessageData* md) 
  2.  MQTTMessage* message = md->message; 
  3.  //打印接收到的消息的長度、和消息內容 
  4.  printf("%.*s", (int)message->payloadlen, (char*)message->payload); 

 5. 發送消息

發送消息也比較簡單,我們只需要設置好我們的主題和消息內容即可

  1. memset(&pubmsg, '\0', sizeof(pubmsg)); 
  2.  //消息內容為 hello harmonyOS ! 
  3.    pubmsg.payload = (void*)"hello harmonyOS !"
  4.  //消息長度 
  5.    pubmsg.payloadlen = strlen((char*)pubmsg.payload); 
  6.    pubmsg.qos = QOS0; 
  7.    pubmsg.retained = 0; 
  8.    pubmsg.dup = 0; 
  9.  
  10.  //推送消息,主題為 pubtest 
  11.  MQTTPublish(&c, "pubtest", &pubmsg); 

 完整源碼如下: 

  1. #include <stdio.h> 
  2.  
  3. #include <unistd.h> 
  4.  
  5. #include "ohos_init.h" 
  6. #include "cmsis_os2.h" 
  7.  
  8. #include <unistd.h> 
  9. #include "hi_wifi_api.h" 
  10. //#include "wifi_sta.h" 
  11. #include "lwip/ip_addr.h" 
  12. #include "lwip/netifapi.h" 
  13.  
  14. #include "lwip/sockets.h" 
  15.  
  16. #include "MQTTClient.h" 
  17.  
  18. /** 
  19.  * MQTT URI farmat: 
  20.  * domain mode 
  21.  * tcp://iot.eclipse.org:1883 
  22.  * 
  23.  * ipv4 mode 
  24.  * tcp://192.168.10.1:1883 
  25.  * ssl://192.168.10.1:1884 
  26.  * 
  27.  * ipv6 mode 
  28.  * tcp://[fe80::20c:29ff:fe9a:a07e]:1883 
  29.  * ssl://[fe80::20c:29ff:fe9a:a07e]:1884 
  30.  */ 
  31. #define MQTT_URI                "tcp://106.13.62.194:1883" 
  32.  
  33. struct opts_struct 
  34.     char* clientid; 
  35.     int nodelimiter; 
  36.     char* delimiter; 
  37.     enum QoS qos; 
  38.     char* username; 
  39.     charpassword
  40.     char* host; 
  41.     int port; 
  42.     int showtopics; 
  43. } opts = 
  44.     (char*)"stdout-subscriber", 0, (char*)"\n", QOS2, NULLNULL, (char*)"106.13.62.194", 1883, 1 
  45. }; 
  46.  
  47.  
  48. void messageArrived(MessageData* md) 
  49.     MQTTMessage* message = md->message; 
  50.  
  51.     if (opts.showtopics) 
  52.         printf("%.*s\t", md->topicName->lenstring.len, md->topicName->lenstring.data); 
  53.     if (opts.nodelimiter) 
  54.         printf("%.*s", (int)message->payloadlen, (char*)message->payload); 
  55.     else 
  56.         printf("%.*s%s", (int)message->payloadlen, (char*)message->payload, opts.delimiter); 
  57.     //fflush(stdout); 
  58.  
  59.  
  60. unsigned char buf[100]; 
  61. unsigned char readbuf[100]; 
  62.  
  63. int mqtt_test(void) 
  64.     int rc = 0; 
  65.      
  66.     MQTTMessage pubmsg; 
  67.  
  68.      
  69.     char* topic = "test"
  70.  
  71.     if (strchr(topic, '#') || strchr(topic, '+')) 
  72.         opts.showtopics = 1; 
  73.     if (opts.showtopics) 
  74.         printf("topic is %s\n", topic); 
  75.  
  76.     Network n; 
  77.     MQTTClient c; 
  78.  
  79.     NetworkInit(&n); 
  80.     NetworkConnect(&n, opts.host, opts.port); 
  81.      
  82.     MQTTClientInit(&c, &n, 1000, buf, 100, readbuf, 100); 
  83.     MQTTStartTask(&c); 
  84.  
  85.     MQTTPacket_connectData data = MQTTPacket_connectData_initializer;        
  86.     data.willFlag = 0; 
  87.     data.MQTTVersion = 3; 
  88.     data.clientID.cstring = opts.clientid; 
  89.     data.username.cstring = opts.username; 
  90.     data.password.cstring = opts.password
  91.  
  92.     data.keepAliveInterval = 10; 
  93.     data.cleansession = 1; 
  94.     printf("Connecting to %s %d\n", opts.host, opts.port); 
  95.      
  96.     rc = MQTTConnect(&c, &data); 
  97.     printf("Connected %d\n", rc); 
  98.      
  99.      
  100.  
  101.     printf("Subscribing to %s\n", topic); 
  102.     rc = MQTTSubscribe(&c, topic, opts.qos, messageArrived); 
  103.     printf("Subscribed %d\n", rc); 
  104.  
  105.     memset(&pubmsg, '\0', sizeof(pubmsg)); 
  106.     pubmsg.payload = (void*)"hello harmonyOS !"
  107.     pubmsg.payloadlen = strlen((char*)pubmsg.payload); 
  108.     pubmsg.qos = QOS0; 
  109.     pubmsg.retained = 0; 
  110.     pubmsg.dup = 0; 
  111.  
  112.      
  113.  
  114.     while (1) 
  115.     { 
  116.         MQTTPublish(&c, "pubtest", &pubmsg); 
  117.         sleep(1);    
  118.     } 
  119.      
  120.     printf("Stopping\n"); 
  121.  
  122.     MQTTDisconnect(&c); 
  123.     NetworkDisconnect(&n); 
  124.  
  125.     return 0; 

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2023-04-20 17:26:40

FreeDOSC 語言

2020-11-19 10:25:24

MQTT

2020-10-27 10:00:26

鴻蒙開發板物聯網

2021-01-22 14:03:34

Flutter系統鴻蒙

2011-07-07 16:00:15

iPhone OpenCV

2011-03-22 10:06:27

LinuxZFS

2019-12-05 10:30:17

LinuxMultitail

2020-11-18 11:36:35

鴻蒙系統

2020-12-07 12:47:22

MQTT鴻蒙hi3861

2020-08-25 19:56:43

MinGWWindowsGNU

2011-03-01 11:23:37

Chrome ActiveX

2011-03-25 11:21:36

NagiosLinux

2021-03-22 08:45:30

異步編程Java

2023-08-25 09:17:38

2022-09-14 09:18:52

SubversionLinux系統

2011-05-05 14:24:02

Android NDKAndroid NDKNDK

2020-04-10 09:56:12

at命令Linux安排任務

2019-10-29 16:30:10

FedoraSSH端口Linux

2020-10-26 12:30:23

LinuxyumZFS

2021-08-19 18:28:22

FedoraLinuxOpenCV
點贊
收藏

51CTO技術棧公眾號

在线免费观看日本欧美| 成人激情在线| 亚洲综合激情另类小说区| 国产精品亚洲不卡a| 69视频免费在线观看| 欧美日韩精品在线一区| 日韩无一区二区| 大肉大捧一进一出好爽视频| jzzjzzjzz亚洲成熟少妇| 国产乱人伦偷精品视频不卡 | 欧美亚洲不卡| 亚洲精品永久免费| 国产xxxxhd| 国模套图日韩精品一区二区| 亚洲欧美一区二区三区久本道91 | 男人av在线| 精品一区二区三区不卡| 91精品国产91| caoporn91| 国产精品亚洲人成在99www| 日韩一区二区三区四区| 在线观看的毛片| 第一福利在线视频| 亚洲欧美偷拍另类a∨色屁股| 麻豆久久久av免费| 丁香花免费高清完整在线播放| 日本在线不卡一区| 久久人91精品久久久久久不卡| 中文字幕精品亚洲| 国产99久久久国产精品成人免费 | 农村末发育av片一区二区| 亚洲综合在线电影| 精品久久久久久久大神国产| 韩国无码av片在线观看网站| 黄色网址在线免费播放| 亚洲国产精品黑人久久久 | 欧美顶级大胆免费视频| 亚洲视频在线视频| 男生裸体视频网站| 风间由美中文字幕在线看视频国产欧美 | 成人午夜又粗又硬又大| 91视频-88av| 97精品久久人人爽人人爽| 日韩成人午夜电影| 国产激情综合五月久久| 久久久免费高清视频| 一区二区国产在线观看| 欧美极度另类性三渗透| 毛片a片免费观看| 一区二区三区毛片免费| 久久久国产一区二区| 99在线视频免费| 欧美日韩一区二区三区视频播放| 亚洲人成网站999久久久综合| 久久99精品久久久久久琪琪| 成年人小视频在线观看| 8x国产一区二区三区精品推荐| 91 com成人网| 欧美一区二区三区影院| 少妇高潮一区二区三区69| 四虎亚洲精品| 国产精品久久久久久久久快鸭| 久久精品99| 视频在线不卡| 久久久一区二区| 青青成人在线| 91在线看片| 国产精品第13页| 亚洲 欧洲 日韩| 污污网站在线看| 亚洲狠狠爱一区二区三区| 无码粉嫩虎白一线天在线观看 | 日本成人在线免费视频| 朝桐光一区二区| 欧美日韩卡一卡二| 两性午夜免费视频| 国产 日韩 欧美 综合 一区| 日韩电影中文字幕一区| www.av天天| 99久久夜色精品国产亚洲狼| 欧美大奶子在线| 日本中文字幕网| 日韩成人免费看| 999在线观看免费大全电视剧| 少妇高潮一区二区三区99小说 | 神马午夜精品91| 国产综合网站| 国产精品久久久久久久电影| 国产免费不卡av| 91亚洲男人天堂| 久久久婷婷一区二区三区不卡| 三级在线观看网站| 国产亚洲va综合人人澡精品| 欧美日韩一级在线| 日本午夜大片a在线观看| 欧美无人高清视频在线观看| 亚洲少妇中文字幕| 精品久久久久久久| 欧美大片第1页| 成人一级免费视频| 成人午夜视频福利| 香蕉久久夜色| 草草在线视频| 欧美一区中文字幕| 自拍偷拍视频亚洲| 国产综合网站| 91久久精品日日躁夜夜躁国产| 无码精品在线观看| 亚洲欧洲制服丝袜| 校园春色 亚洲色图| 欧美电影完整版在线观看| 日韩一中文字幕| 在线观看日本网站| 从欧美一区二区三区| 一区二区不卡在线| 亚洲成人看片| 亚洲福利视频专区| 日本黄色小说视频| 久久超碰97中文字幕| 欧美aaaaa喷水| a'aaa级片在线观看| 51精品秘密在线观看| 免费毛片视频网站| 99亚洲伊人久久精品影院红桃| 91久久精品美女高潮| 在线免费黄色| 日本韩国精品一区二区在线观看| 少妇被狂c下部羞羞漫画| 91av精品| 亚洲xxxx18| 免费av网站在线看| 欧美视频一二三区| 国产人妻大战黑人20p| 亚洲欧美日韩在线观看a三区 | 精品理论电影在线| 欧美亚洲一区在线| 天堂网在线观看视频| 亚洲国产人成综合网站| 国产精品igao网网址不卡| 91日韩在线| 成人福利视频在线观看| 欧美另类极品| 8x福利精品第一导航| av资源在线免费观看| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩激情久久| 97成人超碰| 少妇久久久久久| 国产精品国产av| 椎名由奈av一区二区三区| 久久久精品高清| 无需播放器亚洲| 91在线国产电影| 污污在线观看| 日韩av在线直播| av图片在线观看| 国产亚洲成av人在线观看导航| 久久久久久久少妇| 色中色综合网| 亚洲最大福利视频| 久久青青色综合| 亚洲国产成人精品久久| 97久久久久久久| 久久精品亚洲国产奇米99| 国产精品人人爽人人爽| 999久久久91| 99se婷婷在线视频观看| 乱馆动漫1~6集在线观看| 亚洲精品在线观看www| 少妇无套内谢久久久久| 最新中文字幕一区二区三区| 永久免费黄色片| 亚洲视频成人| 亚洲国产精品久久久久久女王| 电影一区二区三区久久免费观看| 欧美激情成人在线视频| 清纯唯美亚洲色图| 欧美日韩免费观看一区三区| 免费视频一二三区| 91在线小视频| 欧美成年人视频在线观看| 国产精品videossex久久发布| 久久精品ww人人做人人爽| 黄色精品视频| 久久久久久12| 成人18在线| 欧美精品一区二区三区蜜桃视频 | 国产盗摄一区二区| 亚洲男人天堂网| 99久久婷婷国产一区二区三区| 午夜国产不卡在线观看视频| 久久免费手机视频| 成人黄色在线视频| 一区二区三区视频网| 亚洲三级毛片| 正在播放一区二区三区| 欧美日韩一本| 亚洲尤物视频网| 日韩三区免费| 97在线日本国产| 黄色在线免费网站| 国产亚洲精品久久久久久牛牛 | 99久久久久久久久| 亚洲一区二区视频在线观看| 91狠狠综合久久久久久| 972aa.com艺术欧美| 手机看片国产精品| 日本v片在线高清不卡在线观看| 天堂…中文在线最新版在线| 国产精品国产三级国产在线观看| 美媛馆国产精品一区二区| 香港久久久电影| 国产日产久久高清欧美一区| 26uuu亚洲| 亚洲精品高清无码视频| 国产精品啊啊啊| 成人看片视频| 456成人影院在线观看| 91精品91久久久久久| 新版中文在线官网| yellow中文字幕久久| 男女污视频在线观看| 亚洲激情视频在线观看| 亚洲av无码国产精品久久不卡 | 久久久久欧美| 一区视频网站| 亚洲伊人第一页| 国产成人精选| 国产精品mp4| 电影一区二区三| 97av在线视频| 97人澡人人添人人爽欧美| 欧美激情奇米色| 亚洲www色| 久久综合免费视频影院| 黄网站app在线观看| 久久精品视频播放| 五月天婷婷在线视频| 一本色道久久综合狠狠躁篇的优点 | 亚洲最大成人在线| 丰满少妇一区| 国产精品999| 中文字幕乱视频| 久久精品国产秦先生| 色婷婷综合久久久久中文字幕| 国产精品试看| 99爱视频在线| 男人的天堂亚洲在线| 欧美日韩国产精品激情在线播放| 99国产精品久久久久久久| 成人黄色大片网站| 99精品国产一区二区青青牛奶| 无码粉嫩虎白一线天在线观看 | 99久久国产宗和精品1上映| 老司机一区二区三区| 亚洲精品乱码久久久久久自慰| 久久午夜电影| 成人日韩在线视频| 久久99精品国产麻豆婷婷洗澡| 日韩 国产 一区| 国产精品一二三| 88av在线播放| 国产午夜精品在线观看| 精品一区二区6| 亚洲男人天堂av网| 日本a在线观看| 欧美视频在线观看免费网址| 中文字幕一区二区三区人妻四季| 欧美高清视频在线高清观看mv色露露十八| 国产精品乱码久久久| 精品欧美一区二区三区精品久久 | 欧美激情亚洲国产| 国产传媒在线观看| 国产精品旅馆在线| 激情视频亚洲| 久久成人资源| 日韩欧美一区免费| 大荫蒂性生交片| 久久天堂精品| 亚洲高清av一区二区三区| 成年人国产精品| 一级在线观看视频| 亚洲永久精品国产| 免费一级a毛片| 日韩精品一区在线| 免费播放片a高清在线观看| 久久久www成人免费精品张筱雨| av影视在线| 国产精品中文字幕久久久| 激情av综合| 伊人天天久久大香线蕉av色| 亚洲青色在线| 国产日韩欧美久久| 99久久久国产精品免费蜜臀| 久久久久麻豆v国产| 精品国产精品自拍| 97精品人妻一区二区三区香蕉| 日韩精品在线观| 伊人电影在线观看| 日本伊人精品一区二区三区介绍| 欧洲一区在线| 亚洲精品不卡| 亚洲第一毛片| 五月六月丁香婷婷| 国产亚洲制服色| 国产在线免费视频| 91精品国产欧美一区二区18| 六十路在线观看| 午夜精品一区二区三区视频免费看| ww久久综合久中文字幕| 久久综合给合久久狠狠色| 欧美高清一区| 欧美成人乱码一二三四区免费| 91捆绑美女网站| 精品无码久久久久久久久| 69久久夜色精品国产69蝌蚪网| 精品电影在线| 欧美在线一区二区三区四| 伊人精品久久| 成人免费看片视频在线观看| 免费成人小视频| 六月婷婷七月丁香| 欧美日韩中文在线| 欧美少妇bbw| 久久99精品久久久久久琪琪| 精品国产乱码一区二区三区| 一区二区三区四区国产| 日韩精品每日更新| 免费在线观看污| 欧美日韩亚洲激情| 天天综合天天色| 91精品国产一区| 黄色欧美在线| 热99在线视频| 国内精品国产成人国产三级| 亚洲视频国产视频| 日韩av福利| 欧美午夜精品久久久久久蜜| 性高湖久久久久久久久| 性色av蜜臀av色欲av| 欧美午夜精品伦理| 日本韩国一区| 欧亚精品在线观看| 美女毛片一区二区三区四区| 日韩毛片在线免费看| 久久精品一级爱片| 九九热在线视频播放| 日韩精品免费综合视频在线播放| 亚洲女同志freevdieo| 欧美日韩一区综合| 三级影片在线观看欧美日韩一区二区 | 91porny在线| 亚洲网址你懂得| 欧美网站免费| 韩国黄色一级大片| 久久99精品久久久久久青青91| 91高清在线观看视频| 97人人模人人爽人人少妇| 91精品天堂福利在线观看| 五月六月丁香婷婷| 亚洲制服丝袜一区| 日夜干在线视频| 欧美黄色免费观看| 天天色天天爱天天射综合| 理论片中文字幕| 91国内在线视频| 国产传媒欧美日韩成人精品大片| 免费看污污网站| 亚洲色欲色欲www在线观看| 精品国产91久久久| av天堂一区二区三区| 欧美国产日韩一区二区| 九九热hot精品视频在线播放| 欧美 日本 亚洲| 国产欧美日韩激情| 97国产成人无码精品久久久| 欧美激情一级二级| 综合亚洲自拍| 国产3p在线播放| 夜夜操天天操亚洲| 欧美日韩影视| 91久久中文字幕| 一本久道久久综合狠狠爱| 亚洲自拍偷拍图| 日韩一区二区三区视频| 在线毛片观看| 亚洲精品日韩成人| 国产福利不卡视频| 在线观看日本视频| 久久手机精品视频| 要久久电视剧全集免费| 在线播放av中文字幕| 欧美日韩国产色| 黄色成人在线| 欧美日韩国产精品一区二区| 国产呦萝稀缺另类资源| www.久久久久久久| 欧美交受高潮1| 欧美xxxxx视频| 亚洲欧美在线不卡|