mqtt使用介绍(sencha-touch下)
来源:互联网 发布:土木人的软件 编辑:程序博客网 时间:2024/06/01 07:37
1.配置环境
在原项目的js文件夹下,放入mqttConfig.js+mqttloader.js+mqttws31.js
在.html中引入mqtt,body中
<script src="js/mqttloader.js"></script>
android项目下:
js文件夹下,放入mqttPlugin.js
native下src中,放入org整个文件夹,com文件夹下放入crccontact整个文件夹,拷入后会遇到一些error,这时将error地方的class名字改成自己的class名即可。
AndroidMainfest.xml中加入
native文件夹下xml中config.xml中注册phoneGap的插件
<plugin
name="MqttPlugin"value="com.crccontact.mqtt.android.cordova.plugin.MqttPlugin"/>
<plugin
name="AMRPlugin"value="com.crccontact.mqtt.android.cordova.plugin.AMRPlugin"/>
2.原理
订阅(类型,可靠参数)->可接受自己订阅的类型的消息
发布(类型,内容,可靠参数)
下载mqtt的包,安装后,打开即开启了服务器,ia92里J2SE打开wqttSample.jar打开就是一个客户端,可以模拟mqtt的过程及调试代码
3.代码详解
在mqttConfig.js中加入关键代码
前面的基础配置:
var MQTT=MQTT?MQTT:{};
MQTT.host="192.168.1.111";
MQTT.port=1883;
MQTT.connectOptions={cleanSession:false};
MQTT._isMqttClientInit=false;
关键代码,订阅
initSub(MQTT.host,MQTT.port,type);
initSub(host,port,type)->
设置mqtt的client
client=newMQTTPlugin(MQTT.host,Number(MQTT.port),MQTT.clientId);
设置消息到达时的回调函数
设置subscribe成功的函数
MQTT.connectOptions['onSuccess']=onConnect;
var onConnect=function(){
subscribeType(type);
}
//订阅消息
function subscribeType(type)->
var topics=[type,];
var qoses=[2,];
MQTT.client.subscribe(topics,qoses);
//发布消息
pub(type,msg,qos)->
MQTT.client.publish(type,msg,2,function(){}, function(error){alert("发送失 败!"+JSON.stringify(error));});
//消息到达的函数
MQTT.onMessageArrived=function(message){}->
topic=message.topic;
msg=message.payloadString;
4.要是想有提醒的话,需要修改android中的代码
在crccontact.mqtt的android下service中MqttService.java中void showNotification(String status)函数和
void showNotificationWithSound(String status)函数
- mqtt使用介绍(sencha-touch下)
- sencha touch 扩展篇之将sencha touch打包成安装程序(下)- 使用phonegap打包安装程序
- 使用sencha-touch-checkbox
- sencha-touch的使用
- 开始使用sencha touch
- sencha touch安装使用
- sencha touch 入门系列 (六)sencha touch运行及代码解析(下)
- sencha touch 入门系列 (八)sencha touch类系统讲解(下)
- sencha touch下dataview配置
- sencha touch 扩展篇之将sencha touch打包成安装程序(上)- 使用sencha cmd打包安装程序
- Sencha Touch JSbiulder 的使用
- 【SENCHA TOUCH】picker的使用
- 【sencha-touch】TabPanel的使用
- Sencha touch使用百度地图
- sencha touch 类的使用
- sencha touch使用遮罩
- [Phonegap+Sencha Touch] 移动开发4、Sencha Touch初步使用
- [Phonegap+Sencha Touch] 移动开发4、Sencha Touch初步使用
- webmagic使用手册(分部式网络爬虫) && Spiderman Java开源Web数据抽取工具
- 石油管道的最优位置
- 基于visual Studio2013解决C语言竞赛题之1030计算函数
- AQTime 基本使用方法
- 【数字图像处理】YUV420转RGB并BMP存储<纯C++实现>
- mqtt使用介绍(sencha-touch下)
- 论团队演化--问题解决篇
- C# MD5-16位加密实例,32位加密实例
- linux2013年终评选
- 字符,字节和编码
- 纵观jBPM:从jBPM3到jBPM5以及Activiti5
- java 数组定义,初始化
- ActiveMQ的消息重发策略和DLQ处理
- 指针篇之九 顺藤摸瓜式的指针数据链接