【发布时间】:2015-12-20 16:56:18
【问题描述】:
我是cordova开发的新手,所以我想知道是否有人可以在这里帮助我。
我正在尝试开发一个与蚊子服务器对话的示例 cordova 应用程序。
我尝试使用插件here,但看起来这不起作用,因为它试图复制一个不可用的 java 文件
<source-file src="src/android/Mqtt.java" target-dir="src/com/arcoirislabs/mqttcont" />
而且我认为它生成要在 mqtt.js 中连接的 url 的方式存在错误
if (data.secure) {
dataUrl = "ssl://" + data.url + data.port;
} else {
dataUrl = "tcp://" + data.url + data.port;
};
我认为应该是dataUrl = "tcp://" + data.url + ':' + data.port;
但是解决这个问题并注释掉上面的源文件并没有帮助。所以我想知道是否有人在 Cordova,/VS.net 2015 上有这个 MQTT 示例的工作示例。
顺便说一句,我在我的示例中使用 AngularJS ToDO App,但不确定这是否是一个问题,要发布的代码如下所示:
ToDoCtrl.prototype.publishMqtt = function () {
mqtt.publish({
url: "localhost",
topic: "Kiran/Temp/PNW6",
secure: false,
qos: "0",
clientId: "SampleJavaV3_",
port: "1883",
message: "23.4",
cleanSession: true,
username: null,
password: null,
debug: true,
success: function (data) {
alert(data);
},
error: function (data) {
alert(data);
}
});
};
我在 mqtt.js 的以下行中看到的错误
cordova.exec(function (response) {
data.success(response)
}, function (error) { data.error(error); }, "MqTTPlugin", "publish", [dataUrl, data.clientId, quietM, data.username, data.password, cleanSes, data.topic, data.qos, data.message]);
它抱怨
TypeError: Cannot read property 'publish' of undefined
at Object.module.exports.exec (http://localhost:4400/ripple/assets/ripple.js:40:29342)
at Object.sero.publish (http://localhost:4400/plugins/com.arcoirislabs.plugin.mqtt/www/mqtt.js:38:17)
at ToDoCtrl.publishMqtt (http://localhost:4400/scripts/controllers/toDoCtrl.js:86:11)
我还可以看到有一个电话间隙插件here,但我无法理解如何在 VS.Net cordova 应用程序中使用它。
问候 基兰
【问题讨论】:
标签: cordova visual-studio-2015 visual-studio-cordova ngcordova