Android MQTT 开发汇总

2017-05-22  本文已影响1100人  蓝点工坊

最近项目用到 MQTT作为开发,因为做了大量的测试,因此把这个资料汇总一下.

一.MQTT的测试服务器

最快捷实用的是 ActiveMQ.

  1. 下载:http://archive.apache.org/dist/activemq/apache-activemq/5.8.0/apache-activemq-5.8.0-bin.zip
  2. 运行前确定 JDK,配置正常.运行如下命令有结果即可.

java -version

  1. 确定打开 AMQ的MQTT端口
    缺省 AMQ只打开 WebSocket,打 MQTT端口需要增加
    配置文件在 conf/activemq.xml ,找到 transportConnectors
<transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<!--打开 MQTT 端口,缺省是 1883 -->
            <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<!--打开 webSocket 端口,缺省是 61614 -->
            <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>
  1. 运行 AMQ.
    如果是 win7.运行 bin/win64/activemq.bat 即可,成功是如下样子
Paste_Image.png

Windows 下还可安装Mosquitto 或 Apollo作为MQTT服务器

IBM WebSphere MQ 服务器,是一个商业解决方案,可了解一下.
http://blog.csdn.net/ynwewrfjhh/article/details/7300904

参考.

二.Android MQTT 开发

Android 有好几个.按时间顺序来排

  1. IBM MQTT库
    包名为 com.ibm.mqtt.MqttClient
    一般项项目采用wmqtt.jar就是
    测试样例 AndroidPushNotificationsDemo https://github.com/tokudu/AndroidPushNotificationsDemo
    这个库比较老,这个例子是7年前更新的.

在 IBM消息服务器 WebSphere MQ 的 mqxr/lib 目录下,有最新的
最新客户版本是 com.ibm.micro.client.mqttv3.jar,

这里有一个使用 v3版的例子 http://download.csdn.net/detail/junfeng120125/7582209

  1. ActiveMQ 自带的库
    在有 mqclient-xxx.jar 库但资料较少

  2. Eclipse paho 库
    这个库是官方推荐,使用人数最多的库,我们项目也是采用这个库
    最新源码 https://github.com/eclipse/paho.mqtt.android

这个源码 demo里比较复杂,带了很多多余东西,可以看一下其它人写的基于这个库的

  1. moquette库,另一个用得较多库
    moquette

三.扩展开发

  1. WebSocket
    关于 MQTT下 WebSocket格式分析,
    TCP/IP, WebSocket 和 MQTT
    http://www.cnblogs.com/shanyou/p/4085802.html

  2. SSL 通讯

  3. PC端测试工具
    http://blog.csdn.net/czp11210/article/details/40022031
    http://activemq.apache.org/cms/ ActiveMQ官方 C++客户端

上一篇 下一篇

猜你喜欢

热点阅读