0

我是科尔多瓦开发新手,所以我想知道是否有人可以帮助我。如何在VS.Net 2015中安装MQTT cordova插件

我想开发一个样本科尔多瓦应用程序,将与蚊虫服务器交谈。

我曾试图利用插件here,但看起来这是行不通的,因为是一个Java文件它试图复制其不可

<source-file src="src/android/Mqtt.java" target-dir="src/com/arcoirislabs/mqttcont" /> 

而且我认为这是一个错误它的方式生成的URL在mqtt.js

if (data.secure) { 
     dataUrl = "ssl://" + data.url + data.port; 
} else { 
    dataUrl = "tcp://" + data.url + data.port; 
}; 

我相信它应该像dataUrl = "tcp://" + data.url + ':' + data.port;

howev连接呃解决这个问题并且评论上面的源文件没有帮助。所以我想知道是否有人在科尔多瓦/ VS.net 2015上有这个MQTT例子的工作示例。

顺便说一句我正在使用AngularJS ToDO应用程序作为我的示例,不知道如果这是一个问题,但代码发布如下所示:

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应用程序中使用它。

问候 基兰

回答

0

貌似我来不及回答这个问题。我是插件的原始维护者。请使用我们的新插件。它工作正常。虽然我们定期更新插件以添加新功能和平台。由于图书馆的需求未包括在内,因此当时工作状况不佳。现在我们完全兼容Gradle系统,底层库比后一个库(这是Eclipse Paho的方式)好得多。 让我知道是否有任何问题或建议。

相关问题