线程 1:EXC_BAD_ACCESS(代码 = 1,地址 = 0x0)问题已生成

Thread 1 : EXC_BAD_ACCESS (Code = 1, address = 0x0) issue generated

我正在使用 Paho MQTT(物联网)和 mobilefirst 7.1 进行混合应用程序开发(对于 iOS 、Android 和 windows phone 设备)。我尝试使用 'broker.mqttdashboard.com' 作为 MQTT 代理,但它不适用于 iOS .

错误:

Xcode 控制台:

libc++abi.dylib: Pure virtual function called!

main.js:

function wlCommonInit(){
     MQTTconnect(); //connect broker with subscribe 
}

mqttService.js:

var host = 'broker.mqttdashboard.com';
var port = 8000;
var topic = 'Sensor';   // topic to subscribe to
var useTLS = false;
var username = null;
var password = null;
// username = "Nazmul";
// password = "Kp0582!";
var cleansession = true;   

var mqtt;
    var reconnectTimeout = 2000;

    function MQTTconnect() {
        mqtt = new Paho.MQTT.Client(
                        host,
                        port,
                        "web_" + parseInt(Math.random() * 100,
                        10));
        var options = {
            timeout: 3,
            useSSL: useTLS,
            cleanSession: cleansession,
            onSuccess: onConnect,
            onFailure: function (message) {
                console.log("Connection failed: " + message.errorMessage + "Retrying")
                setTimeout(MQTTconnect, reconnectTimeout);
            }
    };

        mqtt.onConnectionLost = onConnectionLost;
        mqtt.onMessageArrived = onMessageArrived;

        if (username != null) {
            options.userName = username;
            options.password = password;
        }
        console.log("Host="+ host + ", port=" + port + " TLS = " + useTLS + " username=" + username + " password=" + password);
        mqtt.connect(options);
    };

    function onConnect() {

        console.log('Connected to ' + host + ':' + port)
        // Connection succeeded; subscribe to our topic
        mqtt.subscribe(topic, {qos: 0});

    };

    function onConnectionLost(response) {
        setTimeout(MQTTconnect, reconnectTimeout);

        console.log("connection lost: " + responseObject.errorMessage + ". Reconnecting")

    };

    function onMessageArrived(message) {

        var topic = message.destinationName;
        var payload = message.payloadString;

        console.log( topic + ' = ' + payload)
        alert(topic + ' = ' + payload);

    };

MobileFirst:版本 7.1.0.00-20151114-1616

xcode:7.2 测试版 (7C46t)

iphone 6s加

项目上传到这里:https://github.com/nazmulkp/Mqtt-MobileFirst-Hybrid-Application

谢谢

int retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
return retVal;

请验证您的 appdelegate class 名称。是 MyAppDelegate 吗?如果是这样,import MyAppDelegate.h 覆盖它。如果仍然无法正常工作,请用此代码替换您的代码。

int main(int argc, char * argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([MyAppDelegate class]));
    }
}

这是一个编辑器没有发现的空引用错误 - 它 运行 仅在 iPhone 上可用的代码中。

空引用错误:因为总是 javascript 文件没有加载。对象抛出此错误。

现在这样可以了

main.js:

function wlCommonInit(){

      $(document).ready(function(){
           MQTTconnect(); //connect broker with subscribe         
       });

  }