mqtt协议的Android端接口该怎么写啊,有点乱额,mqtt协议不是没有接口嘛只有一堆主题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mqtt协议的Android端接口该怎么写啊,有点乱额,mqtt协议不是没有接口嘛只有一堆主题相关的知识,希望对你有一定的参考价值。
是接口文档,我项目已经完成了,只是需要写个文档给实施的人看
参考技术A 一、MQTT协议MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和制动器(比如通过Twitter让房屋联网)的通信协议。
MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:
1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;
2、对负载内容屏蔽的消息传输;
3、使用 TCP/IP 提供网络连接;
4、有三种消息发布服务质量:
MQTT协议通信过程
二、MQTT协议的数据格式
MqttMessage
private boolean mutable = true;
private byte[] payload;
private int qos = 1;
private boolean retained = false;
private boolean dup = false;
三、MQTT协议在android端的集成
在app的build.gradle中添加依赖。或者自己去网上下载对应版本的jar包也可以。
repositories
maven
url"https://repo.eclipse.org/content/repositories/paho-releases/"
dependencies
compile 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.1.0'
compile 'org.eclipse.paho:org.eclipse.paho.android.service:1.1.0'
参考技术B MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和制动器(比如通过Twitter让房屋联网)的通信协议。
MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:
1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;
2、对负载内容屏蔽的消息传输;
使用JMeter测试MQTT协议
1、MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛,本文简单介绍下怎么使用JMeter对MQTT协议做性能测试
2、要对MQTT协议进行测试,需要下载一个mqtt-xmeter-jar-with-dependencies.jar插件,放置在JMeter的lib/ext目录下下载方法见文章末尾
一、添加线程组
- 添加线程组,Jmeter执行是通过线程组进行驱动的,测试计划必须最少有一个线程组,选中测试计划,点击右键,添加》线程》线程组
二、依次添加如下请求
- 添加创建连接请求-选中线程组,点击右键,添加》取样器》MQTT Connect
- 该请求的作用是进行连接,本次使用本机开启的MQTT服务进行测试,所以ip为127.0.0.1,端口默认1883
- 添加发布请求-选中线程组,点击右键,添加》取样器》MQTT Pub Sampler
- 该请求作用是发布消息到服务器,只需要输入主题、发送消息类型、发送消息内容即可
- 添加订阅请求-选中线程组,点击右键,添加》取样器》MQTT Sub Sampler
- 该请求作用是用来订阅发布的消息,只需要输入主题名称,即可订阅
- 由于我们测试过程中一般只需要连接一次,所以本次还添加一个仅一次控制器,该控制器的效果就是一个线程只执行一次,不管执行多少次循环,右键线程组》添加》逻辑控制器》仅一次控制器
-
添加查看结构树,右键线程组,添加》监听器,查看结构树,该组件的功能是查看每个请求的具体请求参数和响应结果
三、执行测试
- 点击执行案例,执行开发好的脚本,结果如下:
- MQTT后台发布记录
? ?如果文章对你有帮助,欢迎关注本人公众号,公众号与本平台文章同步,方便大家查阅,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制
QQ技术交流群:加群请输入验证信息 51CTO
??????????????
微信二维码关注公众号:
????????????
关注之后,回复资源下载,即可获取本人共享的各种资源下载地址
以上是关于mqtt协议的Android端接口该怎么写啊,有点乱额,mqtt协议不是没有接口嘛只有一堆主题的主要内容,如果未能解决你的问题,请参考以下文章
Android使用MQTT订阅及发布消息(初步了解Mqtt以及实现Android操作mqtt服务)