2015-04-03 74 views
4

我們可以在Android內部爲MoTette/Mosquitto代理部署MQTT客戶端通信嗎?如何在Android中部署Moquette代理?

我想在Android內部部署Moquette/Mosquitto代理,並且一個MQTT客戶端將使用該代理與另一個代理進行通信。

+0

上運行的目的是什麼做的,你要運行內部的經紀人Android應用程序,而不是在服務器上? – User404 2015-04-09 09:28:40

+0

其實你是對的我必須在服務器上部署代理,但是......一旦我在服務器內部署代理比我的應用程序將IPC特定(這意味着我必須使用內部API進行內部通信),但我想讓我的應用程序協議特定。 – yuvi 2015-04-09 12:08:57

+0

如果是,可以嗎? – yuvi 2015-04-09 12:10:04

回答

0

必須存在一個主要原因,即將Broker嵌入移動客戶端而不是在服務器中。

原因是您的代理正在服務器中運行,然後幾個移動客戶端通過發佈和訂閱服務器代理中的特定主題來交換消息。

爲此移動客戶端應該實現MQTT客戶,如泛美衛生組織的Android服務: https://eclipse.org/paho/clients/android/

+0

其實Broker運行在服務器端。但是如果我在Android設備中嵌入一個代理,所有通過MQTT的通信將節省我的維護工作量。 – yuvi 2015-07-25 17:17:50

+0

移動MQTT客戶端(Paho)<----->服務器MQTT代理(Moquette) 如果您的移動應用程序中有MQTT客戶端,則所有通信都將通過MQTT協議,並且您可以發佈(發送)或訂閱(接收)。 – Teixi 2015-07-27 08:30:05

+0

是的,我遵循相同的方法,實際上是通過MQTT進行內部和外部通信。如果我採用這種方法,我可以重複使用大部分代碼進行內部和外部通信。 – yuvi 2015-07-27 12:22:51

1

理論上講,是的,你不能因爲Moquette是一個基於Java的經紀人,和Android使用Java SDK,但實際上,這應該從未被製造。

您將需要一個MQTT客戶機,而你的情況,Java客戶端,如paho客戶端,和經紀人應該在真實服務器

+0

是的,可以嵌入爲活動或服務 – yuvi 2015-07-25 17:26:19