我的操作系统是Windows7,32bit。
我安装mosquito-1.1.2-install-win32.exe。
我不更改mosquitto.conf
文件,因此没有主题前缀设置。
使用mosquito订阅主题,如(订阅窗口):
mosquitto_sub.exe -q 2 -t mytopic
OR mosquitto_sub.exe -q 2 -t #
使用mosquito发布主题,如(发布窗口):
mosquitto_pub.exe -q 2 -t mytopic -m “hello″
然后在订阅命令窗口中,我可以收到“hello”
我一直在关注戴尔·莱恩的博客和“android mqtt示例项目”来访问mosquito。
java client(MQTTDemo.java):
//i use mobile emulator
editor.putString(“broker”, "10.0.2.2″);
editor.putString(“topic”, "mytopic”);
//or editor.putString(“topic”, “#”); '#' match any topic
我在
connectToBroker()
中测试MQTTService.java
,连接正常。我和莫斯奎托再次发表了“我的话题”。
但是,最后我无法在移动仿真器中接收消息。
有人知道为什么或其他方法吗?
谢谢!
最佳答案
有时取决于代理的配置方式。在mosquito代理中,可以根据每个通道指定主题前缀。其他时候,需要将订阅主题指定为泛型。我不确定这两种方法是否适用于您的情况,但有一些简单的诊断方法,您没有描述如何使用它们,因此我将提供它们作为起点。
简单的方法就是订阅#
然后查看接收到的主题字符串。
始终有一个单独的订阅监视代理。例如,对于websphere mq,在测试任何发布之前,我使用gui创建对#
的订阅。如果我在gui中得到了发布,而不是应用程序,那么它指向的问题集与我根本没有得到任何东西时的问题集不同。
对该问题的更好描述将包括一些这种鉴别诊断。如果你有机会,请重新测试并用结果编辑问题。