国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
即時(shí)通訊-Android推送方案(MQTT)


1.什么是MQTT協(xié)議

MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測傳輸)是IBM開發(fā)的一個(gè)即時(shí)通訊協(xié)議。

有可能成為物聯(lián)網(wǎng)的重要組成部分。該協(xié)議支持所有平臺(tái),幾乎可以把所有聯(lián)網(wǎng)物品和外部連接起來,被用來當(dāng)做傳感器和致動(dòng)器(比如通過Twitter讓房屋聯(lián)網(wǎng))的通信協(xié)議

2.MQTT協(xié)議的特點(diǎn)

MQTT協(xié)議是為大量計(jì)算能力有限,且工作在低帶寬、不可靠的網(wǎng)絡(luò)的遠(yuǎn)程傳感器和控制設(shè)備通訊而設(shè)計(jì)的協(xié)議,它具有以下主要的幾項(xiàng)特性:

1、使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布,解除應(yīng)用程序耦合;

2、對負(fù)載內(nèi)容屏蔽的消息傳輸;

3、使用 TCP/IP 提供網(wǎng)絡(luò)連接;

4、有三種消息發(fā)布服務(wù)質(zhì)量:

? “至多一次”,消息發(fā)布完全依賴底層 TCP/IP 網(wǎng)絡(luò)。會(huì)發(fā)生消息丟失或重復(fù)。這一級(jí)別可用于如下情 況,環(huán)境傳感器數(shù)據(jù),丟失一次讀記錄無所謂,因?yàn)椴痪煤筮€會(huì)有第二次發(fā)送。

? “至少一次”,確保消息到達(dá),但消息重復(fù)可能會(huì)發(fā)生。

? “只有一次”,確保消息到達(dá)一次。這一級(jí)別可用于如下情況,在計(jì)費(fèi)系統(tǒng)中,消息重復(fù)或丟失會(huì)導(dǎo)致不正確的結(jié)果。

5、小型傳輸,開銷很小(固定長度的頭部是 2 字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡(luò)流量;

6、使用 Last Will 和 Testament 特性通知有關(guān)各方客戶端異常中斷的機(jī)制;

3.Android開啟MQTT連接

在開發(fā)前:

第一:Android項(xiàng)目要先引入下面jar:

第二:要啟動(dòng)AcitveMQ服務(wù)器

Android端使用MQTT協(xié)議連接ActiveMQ服務(wù)器

1.定義url

2.創(chuàng)建MqttClient對象

3.調(diào)用MqttClient對象中connect方法,并通過IMqttActionListener監(jiān)聽連接的結(jié)果

4.Android關(guān)閉MQTT連接

Android端使用MQTT協(xié)議取消連接ActiveMQ服務(wù)器

1.創(chuàng)建MqttClient對象

2.調(diào)用MqttClient對象中disconnect方法

5.自定義MQTT心跳(保持長連接)

Android端使用MQTT協(xié)議與ActiveMQ服務(wù)器端保持長連接

1.定義一個(gè)定時(shí)器:

2.保持長連接

3.發(fā)送心跳包

4.啟動(dòng)訂閱,并開始定時(shí)器

7.測試

運(yùn)行該Android項(xiàng)目查看日志輸出

點(diǎn)擊連接:

保持心跳:

點(diǎn)擊斷開連接:

Android項(xiàng)目下載:https://github.com/LiuJunb/HelloMQTT

6.Android開啟MQTT訂閱

使用第三方的心跳服務(wù)實(shí)現(xiàn)MQTT的訂閱:

1.引入第三方的jar:

2.創(chuàng)建MqttAndroidClient ,并設(shè)計(jì)一個(gè)訂閱的回調(diào)

3.鏈接服務(wù)器(要啟動(dòng)AcitveMQ服務(wù)器)

4.開始訂閱

5.接收訂閱的消息

6.測試訂閱是否成功:

打開ActiveMQ服務(wù)器,發(fā)布一個(gè)與訂閱的主題一樣的消息,看看Android手機(jī)的客戶端是否可以接收到消息

連接服務(wù)器:

訂閱一個(gè)主題:

查看ActiveMQ服務(wù)器:

發(fā)布一個(gè)主題:

查看是否訂閱成功:

MQTT服務(wù)質(zhì)量

(登陸小碼哥社區(qū)原文可查看:MQTT-3.1.1-CN.pdf中文文檔)

在訂閱的時(shí)候可以修改訂閱的服務(wù)質(zhì)量qos:

QoS 0:最多分發(fā)一次

QoS 1: 至少分發(fā)一次

QoS 2: 僅分發(fā)一次

MQTT過濾器

(登陸小碼哥社區(qū)原文可查看:MQTT-3.1.1-CN.pdf中文文檔)

7.Android進(jìn)行MQTT發(fā)布

1-3.前三步與訂閱的一樣

4.開始發(fā)布:

5.測試發(fā)布

在Android手機(jī)的發(fā)布界面,發(fā)布一個(gè)主題,然后打開ActiveMQ服務(wù)器查看是否發(fā)布成功

發(fā)布一個(gè)主題:

查看主題發(fā)布是否成功:

MQTT消息保留

在發(fā)布的時(shí)候可以修改消息是否保留:

8.Android使用MQTT實(shí)現(xiàn)群聊

群聊實(shí)現(xiàn)的原理是:大家訂閱同一個(gè)主題,發(fā)布同一個(gè)主題

1.訂閱同一個(gè)主題:(實(shí)現(xiàn)接收消息)

2.發(fā)布同一個(gè)主題:(實(shí)現(xiàn)發(fā)布消息)

開始兩個(gè)模擬器,連接服務(wù)器:

打開群聊界面:

兩個(gè)模擬器同事訂閱android06主題:

開始發(fā)布消息聊天:

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
采用MQTT協(xié)議實(shí)現(xiàn)Android消息推送
mqtt協(xié)議 學(xué)習(xí)筆記
MQTT協(xié)議之生產(chǎn)者消費(fèi)者實(shí)現(xiàn)
mosquitto——一個(gè)開源的mqtt代理
activeMQ 推送之mqtt客戶端
MQTT協(xié)議簡介
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服