2012-03-05 8 views
39

我是Android新手,希望使用MQTT作爲Android的推送通知器。
我已閱讀約MQTT但不明白。如果任何一個使用了這個庫,以便PLZ告訴我,我必須做的,開始使用它..在android中使用MQTT的基本步驟

我有一個Java服務器(在Windows上運行)和大量客戶端(Android手機上我的應用程序將被安裝)。我的服務器將隨時向所有或某些特定客戶端發送消息。

我的基本要求是什麼?我的意思是有

  1. 服務器要求?
  2. 某種註冊?
  3. 要在android中包含的庫?
  4. Android設備的標識符? (如C2DM要求谷歌帳戶,每個設備)

plz幫助我在這方面

回答

52

您需要:

  1. 它運行在服務器端的MQTT經紀人。這可能就像是開源的蚊子經紀人。
  2. 您的Android應用中包含的MQTT客戶端庫,可讓您的應用連接,訂閱和發佈消息。在http://mqtt.org/software
  3. 上列出的許多Java選項提供了一種唯一標識用戶或設備的方法,然後將其用作主題,以便您可以單獨發佈消息到一個設備。

山谷裏寫了這個(http://www.dalelane.co.uk/blog/?p=1599)一個很好的指南,也有關於MQTT一套好的資源(https://github.com/mqtt/mqtt.github.io/wiki

+4

戴爾萊恩的舊鏈接已損壞。這裏是新的http://dalelane.co.uk/blog/?p=1599 – nanospeck 2014-10-04 14:56:18

+3

如果有人在尋找示例應用程序的Android Studio端口,我在這裏做了一個:https://github.com/bytehala/ android-mqtt-quickstart – lemuel 2016-03-30 16:44:06

+1

@lemuel我到達這裏是因爲我正在尋找如何爲MQTT編寫Android應用程序。雖然Dale Lane的博客解釋了它,但他的示例使用了舊的IBM MQTT庫,並且應用程序中的許多代碼已被棄用。真正幫助我的是你的示例應用程序。這真的很棒!謝謝。 – eepty 2017-01-11 17:09:06

7

如果你想使用MQTT在Android設備發送推送通知,然後這個演示將最適合你。

通過使用這個例子,你可以發送推送通知到你的Android設備。

https://github.com/tokudu/AndroidPushNotificationsDemo 

如果你想創建一個像LEADBOLT,AIRPUSH,等你自己推入服務..然後你不得不需要以下的東西。

[1]配置自己的服務器發送推送通知。 對於配置服務器.. (如tokudu在PHP,WAMP工作)[A]安裝PEAR [B]安裝SAM [C]配置SAM

[2]您需要mosquitto或IMB的RSMB來選擇目標Android設備。 [3]你需要一些android代碼來接收通知,發送保持活動信號到服務器,創建與服務器的連接等...(可以在TOKUDU示例中找到)。

如果您有任何問題,然後告訴我,我一定會幫助你。

+0

謝謝。你能幫我設置和配置apache服務器中的消息代理SAM嗎? – Viswa 2012-04-14 19:26:07

+0

警告:該項目使用以前版本的MQTT,它可以正常工作,但它不提供驗證(用戶名/密碼)的功能。 – 2015-07-30 17:24:41

8

基本步驟

  1. 安裝使用PHP的WAMP服務器安裝WAMP服務器(版本應該比 5.1.0上)
  2. ,啓動WAMP服務器(這樣 能獲取默認配置)。
  3. 打開命令提示,將目錄更改到PHP {版本},

對於防爆。C:\wamp\bin\php\php5.3.0

[1] 安裝PEAR

  • 現在我們必須通過運行下面的命令來安裝PHP PEAR(即,不是默認安裝) 。

    PHP -d phar.require_hash = 0 ./PEAR/go-pear.phar

    OR

    PHP -d phar.require_hash = 0去-pear.phar

  • 現在檢查在C:\wamp\bin\php\php5.3.0\PEAR (安裝與否)下的目錄PEAR。在目錄

  • 現在C:\wamp\bin\php\php5.3.0PEAR_ENV.reg(註冊表文件)的創建,使上雙擊改變PHP.ini文件梨invironment

  • 現在梨安裝,我們必須運行下面的命令(可選的)。

    梨升級

    梨安裝升級通道

    所以PEAR設置現已完成

[2] 安裝SAM(簡單的異步消息傳遞)

  • 要安裝SAM我們必須運行以下命令

    轉到C:\ WAMP \ BIN \ PHP \ php5.3.0

    PECL安裝-B SAM

[3] 選擇並運行Mosquitto或RSBM

  • 真正的小型消息代理(RSMB)是一個簡單的MQTT代理,也由IBM提供的 http://www.alphaworks.ibm.com/tech/rsmb。它默認運行在 端口1883上。在我們的架構中,它接受來自 服務器的消息並將它們傳遞給正確的設備。 RSMB也可以被 替換爲Mosquitto服務器http://mosquitto.atchoo.org/
  • 讓我們走吧RSMB。
  • 下載並轉到的Windows文件夾中RSMB(您的版本)
  • 開始Broker.exe

現在你的服務器配置。您可以使用它來推送通知。