You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity开发iOS应用MQTT连接失败问题求助

排查iPhone端MQTT连接失败的步骤及解决方案

一、网络连通性验证

  • 确保iPhone与PC处于同一局域网,可通过iPhone终端类APP执行telnet [PC局域网IP] 1883测试端口连通性。若不通,检查PC防火墙是否开放1883端口,或PC网络是否允许局域网设备访问。
  • 修改Mosquitto配置文件,将监听地址设为0.0.0.0(而非127.0.0.1),确保Broker允许局域网设备连接:
    在mosquitto.conf中添加或修改:
    listener 1883 0.0.0.0
    
    完成后重启Mosquitto服务。

二、MQTT参数配置检查

  • Unity中M2MqttUnity客户端参数需符合以下要求:
    • Broker地址填写PC的局域网IP(禁止使用localhost或127.0.0.1)
    • 端口保持默认1883(若未配置TLS加密)
    • 客户端ID需与PC测试端唯一,避免Broker踢掉重复ID的连接
    • 用户名、密码(若Broker开启认证)需与PC端配置完全一致

三、iOS网络权限配置

  • 在Unity Player Settings -> iOS -> Other Settings中,将Internet Access设为Required。
  • 在Info.plist中添加传输安全配置,允许明文MQTT连接:
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
    
    若需更严格的权限控制,可仅允许PC IP的不安全连接:
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>[PC局域网IP]</key>
            <dict>
                <key>NSIncludesSubdomains</key>
                <true/>
                <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
                <true/>
            </dict>
        </dict>
    </dict>
    

四、M2MqttUnity库与iOS适配

  • 使用库的最新版本,避免旧版本的iOS兼容性问题。
  • Unity打包iOS时,将Architecture设为ARM64(适配当前iOS设备的64位架构)。
  • 关闭Enable Bitcode(Player Settings -> iOS -> Other Settings),多数第三方库不支持Bitcode,防止编译或运行时出错。

五、日志调试定位问题

  • 在Unity代码中添加MQTT回调日志,打包后通过Xcode控制台查看具体错误:
    private void OnConnectFailed(string errorMessage)
    {
        Debug.LogError($"MQTT连接失败: {errorMessage}");
    }
    
    private void OnConnectionSuccess()
    {
        Debug.Log("MQTT连接成功");
    }
    
    private void OnConnectionLost(string reason)
    {
        Debug.LogWarning($"MQTT连接断开: {reason}");
    }
    
  • 开启Mosquitto全类型日志(修改mosquitto.conf中log_type all),重启后查看Broker是否收到iOS端的连接请求或消息。

六、NodeMCU端接收验证

  • 先用PC端MQTT工具(如MQTTX)发送测试消息,确认NodeMCU能正常点亮LED,排除硬件端逻辑问题。

内容的提问来源于stack exchange,提问作者ZachL11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 04:24:18